[LLVMdev] git
David A. Greene
greened at obbligato.org
Fri Jul 29 06:42:12 PDT 2011
jo at durchholz.org writes:
> Currently, I tend to break out small incremental changes to they're
> easier to review, but this works only up to a certain point. What
> happens is that I find I need some "enabler" change. Adding a data
> structure to carry enough context to the place where my new code needs
> it. The other thing is "sideline work": while reviewing code for my
> change, I find something unrelated that should really be fixed right
> away. Low-hanging fruit and such. I commit enablers and sideline
> changes, but I find I can't do so if there is already main-task work
> done in that file.
Exactly right.
> With git, I can single out individual changes in a file and send them off
> as a preparatory commit.
> With SVN, I have to set up a separate workdir, start the IDE, do the
> change, and commit it; then merge it back into my mainline workdir. That's
> so much more work that it disrupts the flow of work, so I don't do it and
> end with a jumble of unrelated changes in a single patch.
> Anybody I'd be sending the patch to would probably reject it as "too many
> unrelated changes". I'd probably end up redoing any change twice: once
> just to get a clean base, then doing it "right" as a series of
> individually applicable small patches.
> Which is raising the entry barrier for contributing to LLVM considerably.
> At least for people with a workflow similar to mine.
This is absolutely true and mirrors my experience. It became much
easier to respond to patch feedback with git than it had been with svn.
-Dave
More information about the llvm-dev
mailing list