Re: [Q] Branch aliases (synonyms)?

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

 



Brian Foster wrote:
(...)
 The catch is a desire(? requirement?) that, when the
 transition ends, people used to using B can continue
 to use B, people used to using A can continue to use A,
 and there is no difference.  That is, after the end of
 transition, branch names A and B are the same thing.
 Always.  Automatically.

 Using a symref seems a working answer.  That is,
 after the merge, change B from a true branch head
 into a symref pointing to A:

      git merge ...
      git symbolic-ref refs/heads/B refs/heads/A

  ▶ What are the gotchas?

Git clone will turn symref B into a regular branch,
which will not move in parallel with A.

People may have private scripts which will
be surprised when they encounter B.  E.g. when
parsing the output from 'git branch'.
Check out B, then you expect B rather than A
to be reported as the current branch:
  git checkout B
  git branch
  * A
    B -> A

  ▶ Are there other solutions?

You haven't explained the problem which led you to want "equal"
branches.  E.g. if it's hard to teach developers to switch
from B to A, a hook which rejects pushes to B might help.
Possibly in addition to them using a private symref.  In this
case, 'git symbolic-ref B refs/heads/A' might work better.

Hallvard
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]