Forking Versions

Monte Goulding monte at sweattechnologies.com
Fri Oct 9 17:14:00 EDT 2015


> On 10 Oct 2015, at 2:51 am, Richard Gaskin <ambassador at fourthworld.com> wrote:
> 
> Github is simple - if what you're building is the Linux kernel, which is what it was designed for. ;)

Actually the hardcore guys don’t use GitHub… they have a mailing list and pass around patch files which git can also generate. GitHub is just a web app built on git… A very helpful web app but there you go. There’s others like BitBucket, GitLab etc. You can also just put a bare repo somewhere you can access and use that as a remote without any web UI. Lots of possibilities.

It’s really not all that complicated but it is well worth reading at least the first 3 chapters of the git book https://git-scm.com/book/en/v2 <https://git-scm.com/book/en/v2>

The basic idea of distributed SCM is everyone has the source but nobody has anybody's changes unless they get them. To get them you need to point your repo to theirs (remote) and pull (pull means fetch and merge). 

Branches sound complicated too but they aren’t. All they are is a pointer to a commit. There’s a file in the .git directory for each branch that just contains a reference to a commit (a 1 line sha1 hash) that’s it. Each commit also has a pointer to its parent commit and that’s how you end up with a tree. A merge is just a commit with both a mum and a dad ;-)

Checkout is just making your file tree the same as it was at a particular commit. Remember branches are just pointers to commits.

Cheers

Monte


More information about the use-livecode mailing list