Books / Minimal GitHub Tutorial / Chapter 8
Branching and merging
I touched on just a few things about git. Get yourself going with git and github and then start looking at some of the many resources.
In particular, pay attention to: Branching: Create a separate branch to develop a feature (or work on a bug) without disturbing the master branch. If it works out, you can merge it back into the master; if it doesn’t, you can trash it. Branching is super easy, so for big projects, you should probably do it more often than not.
To create a branch called new_feature
:
$ git branch new_feature
Then “check it out”:
$ git checkout new_feature
Make various modifications, and then add and commit.
To go back to the master branch, check it out:
$ git checkout master
To push the branch to github, use this:
$ git push origin new_feature
If you make changes to the master branch, you’ll want to merge them into your exploratory one:
$ git checkout new_feature
$ git merge master
If you’re satisfied with your changes in the exploratory branch, merge them into the master:
$ git checkout master
$ git merge new_feature
If you’re done with the branch and want to delete it:
$ git branch -d new_feature
But if you pushed it to github, it will still exist there. This is how to delete the branch from github:
$ git push origin --delete new_feature
After pulling from github, use the following to get access to a branch that is only on github:
$ git checkout -b new_feature origin/new_feature
If you want to pull a particular branch from a collaborator’s repository, do this:
$ git checkout new_feature
$ git pull myfriend new_feature
One final point: note that
git pull
is really doing a
git fetch
followed by a
git merge
.
Delete a repository
To delete your repository on Github:
-
View it in a web browser (say https://github.com/myaccount/myrepo)
-
Click on “Settings” (below the Unwatch/Star/Fork buttons on the right)
-
Scroll down to “Danger Zone” and click “Delete this Repository”
-
Confirm the name of the repository
On your local machine, the .git
directory/folder within your repository’s
directory contains the full git history. If you delete that directory,
it will no longer be a git repository but will go back to being a
regular project directory.
(You could start over by typing git init
, adding files
with git add
, and then git commit
.)