[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Historic and proposed future use of branches in the findutils reposi

From: Bernhard Voelker
Subject: Re: Historic and proposed future use of branches in the findutils repository
Date: Wed, 6 Jan 2016 21:50:27 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0

On 01/05/2016 11:25 PM, James Youngman wrote:
> 2) Proposed arrangement for the future
> a) Future of "master": continue to use it for development, but also
> cut "stable" releases directly from here.   Abandon the use of
> "stable" branches.  Instead, develop on master and cut stable releases
> from there, directly.   Expect committers to do any destabilizing work
> mostly on private topic branches, though with the option of creating
> shared topic branches (in the Savannah repository) for any large
> destabilizing projects needing collaboration.
> b) rel-4-6-fixes : stop using this as a (current) stable release
> branch ... in other words, discontinue the use of this, merge it into
> master, or obsolete it by creating a 4.8.x release on master.
> c) other rel-xxxx-fixes branches: keep these for historical record.
> d) The other branches could be deleted from the Savannah git
> repository since they're no longer used and are simply confusing.
> Prior to deleting these we could ask the FSF to somehow archive the
> existing (pre-branch-deletion) git repository.  (better ideas
> welcome).
> I believe that this proposal matches the preferences of the downstream
> maintainers (in so far as they each have a preference).  I believe
> this arrangement is also easier for committers due to the lack of a
> need to cherry-pick changes onto a "stable" release branch.
> Thoughts, improvements, suggestions, feedback?


To summarize:
* only commit on one development line - the master branch,
* cut future releases directly from there,
* maybe or not keep historic branches as they are (they do no harm).

I think you cannot remove a branch and keep the history, because a
branch is only a dynamic pointer to a commit in Git.  These unreferenced
commits would stay in the repository until one runs "git gc" there.
If you mind the old branch names in the "git branch -r" output, then
we could also create a tag with the same name there, and remove the
branch, but then the old names would clutter the tag list, well ...
Regarding archiving: each "git clone" is a perfect archive AFAIK. ;-)

I'd personally only remove the rel-4-6-fixes branch, as it is not and
never has been of much use and is confusing for recent "history" - well,
the past 2-3 weeks; all relevant commits seem to exist on master

  diff -u0 \
    <(git log --oneline v4.6.0..rel-4-6-fixes | cut -d' ' -f2- | sort) \
    <(git log --oneline v4.6.0..master        | cut -d' ' -f2- | sort) \
    | grep '^-'
  --- /dev/fd/63  2016-01-06 21:13:23.850263546 +0100
  -Ensure the version number in NEWS matches configure.ac
  -Make regexprops.texi, regeprops.c, and 'make update-copyright' consistent.
  -Merge branch 'rel-4-6-fixes' of ssh://git.sv.gnu.org/srv/git/findutils into 

After a "git push origin :rel-4-6-fixes" to remove the remote branch,
maybe someone could run "git gc" on the server to remove the 21 then-
unreferenced commits.

Thanks & have a nice day,

reply via email to

[Prev in Thread] Current Thread [Next in Thread]