I found this useful to clarify my understanding of git...
https://git-scm.com/book/en/v1/Git-Internals

cheers -ben

On Mon, Jul 31, 2017 at 5:31 PM, Tim Mackinnon <[email protected]> wrote:

> So I’m still puzzled why what I have said is incorrect - tag on master,
> update your repository url to include that tag with “:tagname” and then
> users will get that stable version when they load your baseline (vs.
> Leaving it off and they get whatever you might have in progress on master.
> And sure - you might develop on a branch and get it all perfect first and
> then merge to master - but I still think it is good idea to tag the point
> you are happy with and then update your baselineOf again?)
>
> Peter seems to be implying there is a different (better?) way to do this -
> and I’m wondering if I’m missing something obvious or whether we are all
> saying the same thing (me rather badly it seems)
>
> Tim
>
> On 31 Jul 2017, at 10:18, Alistair Grant <[email protected]> wrote:
>
> Hi Tim,
>
> Perhaps a different way of phrasing it that might help is that tags are
> global, not per branch.
>
> Checking out a commit, whether by id, tag, or Branch name implies the
> entire tree.
>
> Cheers,
> Alistair
>
>
> On 31 Jul. 2017 11:09 am, "Tim Mackinnon" <[email protected]> wrote:
>
> Hi Peter - I am confused now, I’ve always understood that git tags are
> used to mark important points in history. From the Git online manual - "
> Tagging
>
> Like most VCSs, Git has the ability to tag specific points in history as
> being important. Typically people use this functionality to mark release
> points (v1.0, and so on). In this section, you’ll learn how to list the
> available tags, how to create new tags, and what the different types of
> tags are.
> “
>
> So I’ve always understood that by putting a tag on a commit, I was getting
> a snapshot of the whole graph at that point in time? Thus - by specifying
> the “:tag name” on the baseline url, you were getting that version?
>
> Thinking a bit more, I guess if you want to to actually make some changes
> from that tag point - you do need to create a -b branch from it (otherwise
> you have a detached head right?) - is this what you are getting at?
>
> Or is there a more obvious thing I am missing that lets you point to a
> particular version in GIT? I appreciate your insight into this, as I think
> we all need to learn how to do this properly.
>
> Tim
>
> On 31 Jul 2017, at 08:17, Peter Uhnak <[email protected]> wrote:
>
> Nono, I don't think you fully understand git's versioning.
>
> To oversimplify: git's history is composed of commits and parental
> relationships between them. Nothing more, nothing less; it is just a
> directed acyclic graph.
>
> On top of this graph structure you have additional stuff like branches,
> which are just labels atteched to the commits, and also tags, which are
> also just labels.
>
> So when you tag a commit, it doesn't really matter what branch it was on,
> you've simply said that tag 1.0 points to a particular commit XXXXXX in the
> history; that commit could belong to master branch, or development branch,
> or any other branch (or no named branch at all, also known as detached
> head).
>
> In another words, your tag points to a commit only, and branches do not
> play any role in this whatsoever.
>
> Am I being clear? (I'm sipping my morning coffee so my brain is not fully
> operational yet ;) )
>
> Peter
>
>
> On Sun, Jul 30, 2017 at 05:28:44PM +0200, Tim Mackinnon wrote:
>
> Peter - I meant it as a figurative example - on a master branch you can
> tag whenever you want right? And so you can point users to a specific tag
> on master so they have a stable point to load from (possibly while you
> merge a branch back to master and then update any documentation or config
> before retagging and updating a BaselineOf?
>
> This looks like what the AWS Smalltalk git repo has used as an example.
>
> Tim
>
> (Ps
> Apologies for the "rage" iOS autocorrect - apparently that's what Apple
> thinks tags is corrected to ;)
>
> Sent from my iPhone
>
>
>
> Sent from my iPhone
> On 30 Jul 2017, at 16:35, Peter Uhnak <[email protected]> wrote:
>
>
> If I've understood correctly, this means you can rage master with a
> version number like v1.1 and then put that in the URL
>
> https://github.com/peteruhnak/IconFactory/tree/master:v1.1/
>
>
> I am not sure where you got this url from, but combining branch and tag
> name makes nor sense... that's like you wanted a version 1.1 AND 2.3 (or
> whatever would be the latest in master).
>
> (as mentioned in the syntax: branch name OR commit id OR tag id)
>
> Peter
>
>
>
>
>
>
>
>

Reply via email to