Re: How we use Git
"Randall S. Becker" <[email protected]>
| Newsgroups | gmane.comp.bug-tracking.bugzilla.devel |
|---|---|
| Message-ID | <[email protected]> |
Gerv, I think it might be best to have a separate branch every release, not just the minors. So you would have a branch for 4.4.6 as well as 4.4. If you end up with 4.4.6.1, that too would be a branch - although you could get away with a tag. The decision between branch and tag really comes down to the granularity of fix releases. If there will be a 4.4.6.1.1, then branching at 4.4.6.1 is needed, otherwise not. Numbered releases are arbitrary in Git, unlike in anything derived from the RSC paradigm. Even if you are going to fix 4.4.6 (on some 4_4 branch or 4_4_6) with patches to create 4.4.7, in Git, you would normally create a branch for the pre-approved fixes, check things out, modify, commit, test, and once happy, merge back into your working branch. From there, tag or branch for the release, as named - but that is really just an arbitrary identifier to Git. I hope I didn't confuse things more ;) Cheers, Randall -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Gervase Markham Sent: October 31, 2014 7:27 AM To: dev-apps-bugzilla-CzyLcWPZiU5YsZ3hbOqMTti2O/[email protected] Subject: How we use Git A quick quiz: Q1: What git commands would I use to obtain an exact copy of 4.4.6 from our git repo? Q2: Same question for 4.4.4. As far as I can see, the only way of doing this currently is to do: git clone http://git.mozilla.org/bugzilla/bugzilla.git cd bugzilla git log <look for the final 4.4.4 commit> git checkout <sha1> <get strange message about "detached HEAD"> Am I wrong? If I'm not, then this isn't good. Currently, we have branches for each release, but these contain all fixes checked on on that branch, so even if you want "the latest 4.4 release", if you: git checkout -b 4.4 origin/4.4 (which is already a complex command) then you actually get 4.4.6 plus some more fixes. I believe we need metadata in our git repo such that any (recent) released version can be pulled and run bit-for-bit identical to the release tarball. I think we also need a pointer (tag?) to "latest stable release" on each branch which moves when we do a new release. Does that make sense to people? Gerv _______________________________________________ dev-apps-bugzilla mailing list dev-apps-bugzilla-CzyLcWPZiU5YsZ3hbOqMTti2O/[email protected] https://lists.mozilla.org/listinfo/dev-apps-bugzilla - To view or change your list settings, click here: <http://bugzilla.org/cgi-bin/[email protected]> - To view or change your list settings, click here: <http://bugzilla.org/cgi-bin/mj_wwwusr?user=gcbd-developers-Uylq5CNFT+jYtjvyW6yDsg@public.gmane.org>