adonthell-devel
[Top][All Lists]
Advanced

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

[Adonthell-devel] Re: Code moved to git


From: Chris Frey
Subject: [Adonthell-devel] Re: Code moved to git
Date: Thu, 4 Jun 2009 20:56:02 -0400
User-agent: Mutt/1.4.1i

On Thu, Jun 04, 2009 at 09:49:31PM +0200, Kai Sterker wrote:
> Hi everyone,
> 
> today, CVS at Savannah had been restored and was online long enough to
> get adonthell and tools into git. 

Excellent! :-)


> However, we now have the most important bits of Adonthell available at github:
> 
>   http://github.com/ksterker/adonthell/tree/master
>   http://github.com/ksterker/adonthell-tools/tree/master
>   http://github.com/ksterker/wastesedge/tree/master
> 
> That means that a number of organizational things change. Let me try
> and list the most important ones:
> 
> 1. To get write access to these repositories, you'll have to create an
> account at github.com so that I can add you as collaborator.
> 
> 2. Afterwards you can start using git by pulling the repositories you
> need. I'm a bit unsure how that works exactly, as there are at least
> two URLs (one for anonymous access, one for developer access). I
> assume you'd do

Pulling / fetching depends on the remotes you have setup.  Use

        git remote

to list them.  By default, cloning will create an 'origin'
remote.  You can look at the URL connected to that remote with

        git remote show origin

The branches in that remote can be seen with

        git branch -a

For example, 'origin/master' is a common one.  These branches are separate
from your own branches.  'master' and 'origin/master' are different.

The 'origin/master' branch is updated with both 'git pull' and 'git fetch'.

'git fetch' only updates the remote branches (origin/master) while leaving
your own branch untouched.  You can then look at the differences with

        git log master..origin/master
        git diff master origin/master

and merge as you like:

        git checkout master
        git merge origin/master

'git pull' does both a fetch and a merge.

You can have multiple remotes in your repository.  For example, if I created
a repo on repo.or.cz, you could add that remote to your own repo, in order
to pull patches and see what I'm doing, with

        git remote add cdfrey git://repo.or.cz/w/adonthell.git
        git fetch cdfrey

Then your next 'git branch -a' would show new branches such as 'cdfrey/master'
which you could diff, cherry-pick, or merge from, as needed.


>     git clone address@hidden:ksterker/adonthell.git

This worked for me without creating an account yet:

        git clone git://github.com/ksterker/adonthell.git


> In your adonthell directory you would do (please somebody correct me
> if I'm wrong)
> 
>     git pull

I always like doing a fetch first, so I know what I'm working with,
but this is user-preference, and if you're pulling from the same trusted
origin all the time, git pull works fine.


> to add new (and changed!) files to your local repository. And finally
> 
>     git push

If you add multiple remotes as above, you can specify the remote
to push to:

        git push origin

You can specify the branches you want to push as well:

        git push origin master crazyexperiment

- Chris





reply via email to

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