From: Jan Hudec <bulb@ucw.cz>
To: linux@horizon.com
Cc: godeater@gmail.com, git@vger.kernel.org
Subject: Re: Git Vs. Svn for a project which *must* distribute binaries too.
Date: Fri, 8 Jun 2007 22:41:01 +0200 [thread overview]
Message-ID: <20070608204101.GA4084@efreet.light.src> (raw)
In-Reply-To: <20070607165150.27434.qmail@science.horizon.com>
[-- Attachment #1: Type: text/plain, Size: 2051 bytes --]
On Thu, Jun 07, 2007 at 12:51:50 -0400, linux@horizon.com wrote:
> 3) Branches are your friend. CVS users think branches are a big
> deal and require careful thought and planning. Git users branch
> almost as often as CVS users commit. A typical "big change"
> that might be a single commit in CVS would be a branch of
> several commits in git.
>
> In fact, a good piece of advice is to NEVER commit directly
> to your trunk ("master"). Do ALL development on branches, and
> merge them into the trunk.
>
> I cheat on that a lot, but I also know how to fix things if I get
> caught becauee a quick hack is proving not so quick: add a branch
> reference to the tip I'm developing on and then back up the master
> branch to where I should have left it when I started this project.
There is a big difference between the cvs and subversion notion of branches
and the git one, which make branches so much more friendly in git.
In cvs and subversion, branch name is part of the commit identity, so you
have to create it before you commit and it will stay with you forever. That
means you have to plan the branch, because there's no going back.
On the other hand git branch (head) names are just pointers to revisions you
base your work on. You can add branch name after you commit, you can rename
the branch anytime and you can delete branches that are no longer
interesting, either because they are already merged, or because they didn't
work out. That means you don't have to think twice whether you need a branch
before you commit, since you can always change your mind later.
This makes it possible to use heaps of short-lived branches for
experimenting and to give them silly names, because noone cares if you don't
publish them, which you don't need to do and ususally won't do until you are
confident that you are working in the right direction (at which point you
have much better idea about what name to publish them under).
--
Jan 'Bulb' Hudec <bulb@ucw.cz>
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
next prev parent reply other threads:[~2007-06-08 20:41 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-07 4:36 Git Vs. Svn for a project which *must* distribute binaries too linux
2007-06-07 7:57 ` Bryan Childs
2007-06-07 16:51 ` linux
2007-06-08 20:41 ` Jan Hudec [this message]
-- strict thread matches above, loose matches on Subject: below --
2007-06-04 11:48 Bryan Childs
2007-06-04 11:56 ` Julian Phillips
2007-06-04 13:18 ` Theodore Tso
2007-06-04 14:58 ` Johannes Schindelin
2007-06-04 15:20 ` Linus Torvalds
2007-06-04 15:38 ` Bryan Childs
2007-06-04 16:23 ` Linus Torvalds
2007-06-04 17:57 ` Thomas Glanzmann
2007-06-04 20:45 ` Linus Torvalds
2007-06-04 21:21 ` Olivier Galibert
2007-06-04 21:33 ` Linus Torvalds
2007-06-04 22:30 ` Joel Becker
2007-06-05 11:19 ` Theodore Tso
2007-06-05 2:56 ` Johannes Schindelin
2007-06-04 22:29 ` Martin Langhoff
2007-06-04 23:48 ` Daniel Barkalow
2007-06-05 0:21 ` Linus Torvalds
2007-06-05 1:42 ` david
2007-06-05 3:58 ` Linus Torvalds
2007-06-04 23:46 ` Jakub Narebski
2007-06-06 22:34 ` Jakub Narebski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070608204101.GA4084@efreet.light.src \
--to=bulb@ucw.cz \
--cc=git@vger.kernel.org \
--cc=godeater@gmail.com \
--cc=linux@horizon.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).