As you can see from this excerpt, there is a "!" before the git command. What's the point?
[alias]
commitx = !git add . && git commit
- https://stackoverflow.com/a/8956546/1354543
I understand aliases and what the command itself is doing, but not the point of the "!" before the git command.
An important aspect of
!
not covered by the accepted answer is that for the shell command, the working directory is set to the top level of the working copy. Therefore,git commitx
would stage then commit all new and changed files in the working copy, while runninggit add . && git commit
manually would stage then commit all new and changed files in the current directory.The
!
means "run the following as commands to the shell", so in this case the aliasgit commitx
expands to the equivalent of runninggit add . && git commit
(which is a terrible terrible idea)