On hginit.com, a typical hg workflow is described as:
1.If you haven’t done so in a while, get the latest version that everyone
else is working off of:
hg pull
hg up
2.Make some changes
3.Commit them (locally)
4.Repeat steps 2-3 until you’ve got some nice code that you’re willing to
inflict on everyone else
5.When you’re ready to share:
hg pull to get everyone else’s changes (if
there are any)
hg merge to merge them
into yours
test! to make sure the
merge didn’t screw anything up
hg
commit (the merge) hg push
I use hg pretty regularly, and this all makes sense to me. I’ve just started using git, and I haven’t found anything that describes a typical workflow like the above quote. I was hoping someone could explain the difference in workflow between these two tools and describe a typical workflow in git.
It’s about the same:
git pull# Get latest codegit add foo/*.rb# Add files to commitgit commit -m "Made it more betta"# Make and describe the commitgit push# Push the changes to some master repogit pull# Automatically merge what it can, and show conflictsgit add .# Add whatever was conflictinggit commit -m "Merging with master"git pushAs with Mercurial you can repeat steps 2-4 as much as you like; you don’t have to push after every commit.