This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: version control system


Frank Ch. Eigler wrote:
> 
> joshua.i.stone wrote:
> 
>> [...]  If we are willing to fully jump to DSCM, the I vote for git,
>> but only because I haven't tried any others (mercurial, bazaar).
> 
> Well, why not give it a try.

Since I'm the only one who responded, I may be the only one who cares,
but thanks for humoring me.

> The following URLs will all work to keep roughly up-to-date with
> systemtap.  They contain only a periodically git-cvsimported form of
> the src/ tree; the others (doc/, patches/) would need their separate
> repos.
> 
>         git://sources.redhat.com/git/systemtap.git
>         ssh://sources.redhat.com/git/systemtap.git
>         http://sources.redhat.com/git/systemtap.git

The "http:" URL works for me, but as a "dumb" transport, that's not
optimal.  I can't use the "git:" URL because of Intel proxies.  When I
try the "ssh:" URL, I can get to the server, but I get an error:

  fatal: ''/git/systemtap.git'': unable to chdir or not a git archive
  fatal: The remote end hung up unexpectedly
  fetch-pack from 'ssh://sources.redhat.com/git/systemtap.git' failed.

> While the "ssh:" URL can accept git push, let's not try that until
> when/if we decide to switch over altogether.

Right -- this should be treated as read-only until we've actually
migrated.

If we do fully migrate, it would be nice to more closely attribute
authors.  See the '-A' option to git-cvsimport.  I count only 24
different committers (git log | git shortlog -s), so it's not too bad.
I don't think we need to worry about translating the author/committer
relationships of "on behalf of ..." commits, but it's nice that git can
maintain that in the future.

Another thing to beware of: by default, git-cvsimport pulls into an
'origin' branch, and on the first import it creates a 'master' branch
for you.  However, future import-syncs will only move origin.  (In fact,
your systemtap mirror is already out of sync in this fashion.)  Since
HEAD is pointing to master, anyone who clones is going to get the stale
branch by default.

It also looks a little weird when you clone it to see the remote
branches 'origin/origin' and 'origin/master'.  So I prefer to make
git-cvsimport go directly to the 'master' branch with the '-o' option.
 
>> We could even run a git-cvsserver for the dinosaurs to use. :)
> 
> With sourceware being a machine shared amongst diverse projects, this
> could be difficult.

Understood.

Thanks,

Josh


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]