Windows custom git commands
You can use a git alias which uses git checkout
:
git config --global alias.new 'checkout origin/master -b'
This would then be used as git new new_branch
.
(Which is equivolent to git checkout origin/master -b new_branch
See the git docs for checkout. I tried the command and it worked, but when I looked at the docs, I didn't find a syntax that exactly matched my form. (Closest is git checkout [-q] [-f] [-m] [[-b|-B|--orphan] <new_branch>] [<start_point>]
)
Note: @axiac, I may have used the !git
because it doesn't hurt, and I may have needed to do multiple commands to solve the problem, and didn't remove it when I was done.
Create a batch file that contains the following commands:
git branch %1 origin/master
git checkout %1
Save it, let's say, as C:\Scripts\new-branch.cmd
. (I never worked with PowerShell, I don't know its rules. However, it should work as well using the old Windows Command Prompt).
Test the batch file works as expected by running:
C:\Scripts\new-branch.cmd test1
It should output something along these lines:
Branch test1 set up to track remote branch master from origin by rebasing.
Switched to branch 'test1'
Your branch is up-to-date with 'origin/master'.
If you don't need the new branch to track the remote branch then you just add --no-track
to the git branch
command.
If everything goes well then run:
git config --global alias.new "!C:/Scripts/new-branch.cmd"
This makes the Git
alias new
available to your Windows profile in all repositories. If you need it only in one repository then remove --global
and run the command when the current directory is in the repository where you need it.
Use it as:
git new test2