Installed Git for Windows from https://git-scm.com/
After installation, it is possible to launch two consoles –
git cmd and
git bash .
My understanding is that
git cmd is the windows command line and
git bash is the linux command line. The first steps in use did not reveal significant differences in the work of both. I only noticed that
git bash has a convenient and rather pleasant highlighting with color, as well as hints for commands when you double-click Tab.
There are probably more global differences between
git cmd and
git bash , which will make the cmd-lover start bash. The question is: which ones? For then why add an alternative to cmd to the assembly for windows?
Answer 1, authority 100%
There is no
git cmd or
git bash . There are only service utilities, or rather one service utility with different names:
Both of these exes do
- Initializing environment variables (PATH, etc.)
- Launch terminal.
There is only one difference between them – by default
mintty terminal with
bash inside …
git-cmd.exe launches a standard Windows terminal with
cmd.exe . Moreover,
git-cmd.exe has a key
--command = ... with which you can run bash instead of cmd if desired.
git.exe is a standalone program next to which all the necessary utilities from the msys package are located (for example,
sed , and so on), and the missing utilities can be “delivered” with
pacman . The alleged problem with the “paths” has no basis – all commands are performed by the git itself.
git add ** / *. cpp will be handled by the git itself.
- From the command line cmd.exe, the syntax is slightly changed, because
^is the cmd.exe control character. For example, instead of
git.exe rebase -i 2385397 ^ 1, write
git.exe rebase -i 2385397 ^^ 1.
- File masks like the above
git add * .cppare not “expanded” into a file list, that is, arguments are passed unchanged and git searches for suitable files on its own. We end up with erroneous behavior when
git add * .cppadds files from subdirectories.
- In the cmd.exe console (unless it is running in ConEmu ) 256 colors cannot be used in Vim.
That’s probably all.