Re: any way to apply tag across all branches in repository?

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

 



Chris Friesen wrote:
> Brandon Casey wrote:
> 
>> If I understand you correctly, you are doing your primary development on
>> the "main" branch and then merging this into the architecture specific
>> branches which contain additional architecture specific changes.
> 
> Correct.
> 
>> All you need to do is tag the "main" branch.  Actually, you are tagging
>> the commit that the branch currently points at.  When this branch is
>> merged into the other branches, they will also contain this commit, and
>> 'git describe' will use the tag you created when generating the version
>> string.
> 
> I think this would work if the most recent commit is on the main branch.
> 
> However, if I make a change on the arch-specific branch, then tag the
> main branch and merge it into the arch-specific branch, git tells me
> the arch-specific branch is already up-to-date and the tag doesn't
> get propagated.

Tags aren't versioned.  They exist outside of the branch namespace.
So merging doesn't have any direct effect on tags.  It is the _commits_
that are merged in (which the tags point to).  If you have already
merged the main branch into the arch-specific branch, then there is
nothing else for git to do.  Your repository looks something like this
graph:

    --o--o---o---o---o---o--o   "arch"
     /                  /
   -o--o---o---o---o---o        "main"
                       |
                      my_tag

When you merge "main" into "arch", the "main" DAG* becomes a part of the
"arch" DAG.  The tag points to a specific commit, which represents a state
of the DAG, which is also now part of the "arch" DAG.

The output of 'git describe $arch_branch' will likely change after you
create the tag though.

Try these commands:

  git describe $main
  git describe $arch_branch
  git tag -m 'a test tag' my_tag $main
  git describe $main
  git describe $arch_branch

-brandon

* DAG - directed acyclic graph
--
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]