Difference between revisions of "Git phrasebook"

From Creative Commons
Jump to: navigation, search
(Making a local branch available as a remote branch)
(Creating a new local branch that tracks a remote branch)
Line 8: Line 8:
 
== Creating a new local branch that tracks a remote branch ==
 
== Creating a new local branch that tracks a remote branch ==
  
  git branch --track LOCALFUN remote/REMOTE_BRANCH_NAME
+
Assuming you want to pull from the remote called "origin":
 +
 
 +
  git branch --track LOCALFUN origin/REMOTE_BRANCH_NAME
 
  git checkout LOCALFUN
 
  git checkout LOCALFUN
 
  git pull # You should see, "Already up-to-date."
 
  git pull # You should see, "Already up-to-date."

Revision as of 22:06, 1 July 2008

Everything in ALLCAPS should be considered something you think about before typing.

Checking out a project

git clone PROJECT_URL
git branch -a # Take a look at all the remote branches you can pick from.

Creating a new local branch that tracks a remote branch

Assuming you want to pull from the remote called "origin":

git branch --track LOCALFUN origin/REMOTE_BRANCH_NAME
git checkout LOCALFUN
git pull # You should see, "Already up-to-date."
git push # You should see, "Everything up-to-date"

Switching which branch you are on

git checkout <BRANCH_NAME>

NOTE: Do not use this to create branches!

Making a local branch available as a remote branch

git push origin LOCAL_BRANCH_NAME:refs/heads/REMOTE_BRANCH_NAME

Configuring git to push a particular local branch to a particular remote branch every time you call "git push"

Edit .git/config. Look for [remote "origin"].

Inside there, add:

push = refs/heads/LOCAL_BRANCH_NAME:refs/heads/REMOTE_BRANCH_NAME

Two important notes:

  1. You may have as many push lines as you like. Every "git push" with no arguments will push all of them.
  2. LOCAL_BRANCH_NAME and REMOTE_BRANCH_NAME are often the same, but naturally do not have to be.

Deleting a remote branch

git push origin :BRANCH_NAME_TO_DELETE