[llvm-dev] Committing with git

David Blaikie via llvm-dev llvm-dev at lists.llvm.org
Mon Oct 28 16:38:02 PDT 2019


I imagine there's probably some way to test whether the rebase did anything
like what subversion would've flagged as a conflict. But can't say I know
how/much about that sort of thing. (maybe there's flags to rebase that make
it more cautious/verbose/interactive)

On Mon, Oct 28, 2019 at 4:24 PM Philip Reames via llvm-dev <
llvm-dev at lists.llvm.org> wrote:

> I've noticed the same.  The net effect for me is that I add a "git pull
> --rebase && git diff" immediately before the commit and push.  It makes me
> a tad nervous for exactly the reason you mention, but I don't know of a
> better option.  Anyone else?
>
> Philip
> On 10/28/19 4:18 PM, Nemanja Ivanovic via llvm-dev wrote:
>
> Now that we have switched to git and I had to leave behind my wonderfully
> simple svn workflow I have noticed something curious when committing.
>
> My typical workflow once my patch is approved on Phabricator has always
> been:
> - Update my source tree to latest
> - Apply the approved patch
> - Rebuild
> - Retest
> - If all is well, commit
>
> Having to update again after rebuilding/retesting was extremely rare since
> SVN only prevented the commit if I am modifying the same file(s) that have
> been modified upstream since my update.
>
> So I tried replicating that workflow with git, but apparently that isn't
> really an option. Apparently git won't let me push if there have been any
> commits upstream at all between my last pull and my push. This means that I
> can never push from a fully tested state since it is almost impossible to
> find a window of 20-30 minutes without any commits (which is how long a
> rebuild/retest takes for me).
>
> One might argue that this is no worse than what I had with SVN since I
> would commit on top of changes that already happened upstream. But this is
> not always the case. Namely, if an upstream commit modifies the same file,
> causing a semantic conflict, I would not end up committing with the old svn
> workflow whereas I would end up committing with the new git workflow.
>
> I am not sure if this is something that can be solved (nor if it is
> something that needs to be solved) but I thought I would just bring it up.
>
> _______________________________________________
> LLVM Developers mailing listllvm-dev at lists.llvm.orghttps://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20191028/582ac567/attachment.html>


More information about the llvm-dev mailing list