Skip to Content.
Sympa Menu

sm-discuss - Re: [SM-Discuss] Missing developers

sm-discuss AT lists.ibiblio.org

Subject: Public SourceMage Discussion List

List archive

Chronological Thread  
  • From: David Kowis <dkowis AT shlrm.org>
  • To: sm-discuss <sm-discuss AT lists.ibiblio.org>
  • Subject: Re: [SM-Discuss] Missing developers
  • Date: Mon, 08 Jan 2007 14:29:59 -0600

seth AT swoolley.homeip.net wrote:
> There is no documentation for how to do an integration, nor
> documentation on how to cherry-pick files, nor documentation on how to
> use whatever merge tool people are using.

Wtf? Yeah there is
<snip>
I want to cherry-pick a change from one local branch to another local
branch.

$ git checkout <first local branch>
$ git log path/to/changed/file
$ git checkout <second local branch>
$ git cherry-pick <sha1 refspec from the previous 'git log' output>

I want to cherry-pick something from one local branch to a remote branch.

$ git fetch ssh://... <remote branch>:<tmp local branch>
$ git checkout <tmp local branch>
$ git cherry-pick <sha1 refspec of commit from other local branch>
$ git push ssh://... <tmp local branch>:<remote branch>
$ git branch -D <tmp local branch>
</snip>

Cherry picking files can be done with a throw away branch, since
branches are so cheap. I'm no git master and I figured this one out just
thinking about this email...

>
> I told the git supporters that they'd have to have that before I went
> back to committing anything. No process should be done unless it's
> documented. That we've gone seven months without anybody volunteering
> to write a script to handle the old perforce integrations we used to do
> is mind-blowing to me.

Perhaps we're not doing it exactly the same way the old perforce
integrations were done?

>
> Remember when we had an ISO process that wasn't reproducible (at all)?
>
> We protested that. Now, I don't have time to get git working in my
> spare time, for integrations. Every time I tried it, it broke, caused
> unexplicable errors, or our setup gave me errors (the idiotic timeout
> for the git daemon, which should be set to 24 hours, but is guaranteed
> to not work even over a cable modem for a full download). Sometimes I
> was told to upgrade, but I did and that didn't fix all the problems.

We all know how dumb I am, and I was able to get git to work after a
little bit. I never got inexplicable errors. And if I broke it too far,
I scrapped my repo, recloned and started over.

And why not use git over ssh?

>
> I've been thoroughly unimpressed with git, and I'm not in any sense new
> to SCMs. Never ever had an issue with subversion, never ever had an
> issue with perforce, but git just doesn't work, and to top it all off is
> full of corner syntaxes that are nowhere documented.

Yeah it does work. Just fine. I've not read any syntax that hasn't been
in the man pages... Perhaps I'm not looking hard enough.

>
> It's probably the worst engineered interface on the planet. I cannot
> think of a worse one.

I can. Microsoft Windows. Obligatory jokes aside, I don't think the
interface for git is very difficult at all. It's all simple command
line, with man pages for everything.

>
> What's ten times worse is when people write docs that say "just run
> these commands" and never explain what they do. They almost never work
> for me because I try to extend it one step above what the docs are for.

Have you ever asked in #git? Have you described what it is that you're
trying to do in #git? I'm sure they'd be more than happy to help you and
describe what it is the commands are doing. I've had nothing but good
experiences in there.

>
> Now, if we had docs that actually explained our git process completely
> and the why and how it works underneath, I might be able to get some
> work done on it. As of now, nothing. Realize that git has 150 odd
> commands or so and I'm not reading all the documentation that the git
> devels have made just to do basic integration. If nobody can boil it
> down without losing critical usability, it's just very poorly
> engineered.

I've been able to do everything that I need to do from the Git Guide on
the wiki. If you aren't perhaps you need to figure out a different way
of accomplishing the same goal, rather than try to force it to the old
perforce way of doing things.

Git has been the best SCM I've used. The list is long and includes PVCS,
CVS, SVN, bzr, and perforce. Of them all, git is the fastest and most
capable. It does require a bit more thought than the typical SCM, but
that's because it does things a bit differently. One could argue it's
smarter.

Sorry you're having such a difficult time, I became comfortable with git
in about a week.

David

Attachment: signature.asc
Description: OpenPGP digital signature




Archive powered by MHonArc 2.6.24.

Top of Page