Nicolas Lesser via llvm-dev
2019-Feb-08 18:42 UTC
[llvm-dev] arc patch with the new git workflow
Hi all, The Phabricator docs seem to say that downloading a patch goes with `arc patch`. However, I tried it on several revisions and they all fail with: Checking patch some/path/to/a/file/that/exists ... error: some/path/to/a/file/that/exists: does not exist in index With the svn repo I found that command to be really useful. But now it seems like I have to download the patch manually, create a new branch, apply it and create a commit for it. Having `arc patch` would be a really great improvement to that - since it also does arc specific stuff I believe that I can't do manually (like arc diff telling me which patch to commit). Is there a way I can make it work? Thanks P.S: I'm not on llvm-dev list, so any replies would have to mention my email I guess :) - Nicolas -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190208/40b8f6d6/attachment.html>
Mehdi AMINI via llvm-dev
2019-Feb-08 19:40 UTC
[llvm-dev] arc patch with the new git workflow
Hi, Are you trying to apply a revision that was uploaded to Phabricator from one of the individual repository (or from SVN)? The issue if I remember correctly is that a patch uploaded from an SVN checkout would not start with `llvm/` or `clang/` and wouldn't be able to be applied in the monorepo. Conversely, a revision created from the monorepo can't be applied by `arc patch` in a single subproject checkout. I don't think there is a way around this, maybe `--strip-prefix` and `--add-prefix` options could be added to `arc patch`, but I'm not sure it would fit the expectation of `arc` upstream. -- Mehdi On Fri, Feb 8, 2019 at 10:42 AM Nicolas Lesser via llvm-dev < llvm-dev at lists.llvm.org> wrote:> Hi all, > > The Phabricator docs seem to say that downloading a patch goes with `arc > patch`. However, I tried it on several revisions and they all fail with: > > Checking patch some/path/to/a/file/that/exists ... > error: some/path/to/a/file/that/exists: does not exist in index > > With the svn repo I found that command to be really useful. But now it > seems like I have to download the patch manually, create a new branch, > apply it and create a commit for it. Having `arc patch` would be a really > great improvement to that - since it also does arc specific stuff I believe > that I can't do manually (like arc diff telling me which patch to commit). > > Is there a way I can make it work? > > Thanks > P.S: I'm not on llvm-dev list, so any replies would have to mention my > email I guess :) > - Nicolas > _______________________________________________ > 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/20190208/e243a4df/attachment.html>
Nicolas Lesser via llvm-dev
2019-Feb-08 20:07 UTC
[llvm-dev] arc patch with the new git workflow
Hi, On Fri, Feb 8, 2019 at 8:41 PM Mehdi AMINI <joker.eph at gmail.com> wrote:> Are you trying to apply a revision that was uploaded to Phabricator from > one of the individual repository (or from SVN)? >Yes from clang if I understood your question correctly.> The issue if I remember correctly is that a patch uploaded from an SVN > checkout would not start with `llvm/` or `clang/` and wouldn't be able to > be applied in the monorepo. Conversely, a revision created from the > monorepo can't be applied by `arc patch` in a single subproject checkout. > I don't think there is a way around this, maybe `--strip-prefix` and > `--add-prefix` options could be added to `arc patch`, but I'm not sure it > would fit the expectation of `arc` upstream. >That's what I thought too, but doing `arc patch` either in llvm-project/ or in llvm-project/clang/ doesn't change anything. Thanks again, - Nicolas -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190208/580f1fc2/attachment.html>
James Y Knight via llvm-dev
2019-Feb-08 20:14 UTC
[llvm-dev] arc patch with the new git workflow
Personally I'd like a "git llvm fetch-diff D1234" subcommand, which outputs a patch in the format of "git format-patch", which, you could then pipe to "git am", say, providing whatever prefix options you like. On Fri, Feb 8, 2019 at 2:41 PM Mehdi AMINI via llvm-dev < llvm-dev at lists.llvm.org> wrote:> Hi, > > Are you trying to apply a revision that was uploaded to Phabricator from > one of the individual repository (or from SVN)? > The issue if I remember correctly is that a patch uploaded from an SVN > checkout would not start with `llvm/` or `clang/` and wouldn't be able to > be applied in the monorepo. Conversely, a revision created from the > monorepo can't be applied by `arc patch` in a single subproject checkout. > I don't think there is a way around this, maybe `--strip-prefix` and > `--add-prefix` options could be added to `arc patch`, but I'm not sure it > would fit the expectation of `arc` upstream. > > -- > Mehdi > > > On Fri, Feb 8, 2019 at 10:42 AM Nicolas Lesser via llvm-dev < > llvm-dev at lists.llvm.org> wrote: > >> Hi all, >> >> The Phabricator docs seem to say that downloading a patch goes with `arc >> patch`. However, I tried it on several revisions and they all fail with: >> >> Checking patch some/path/to/a/file/that/exists ... >> error: some/path/to/a/file/that/exists: does not exist in index >> >> With the svn repo I found that command to be really useful. But now it >> seems like I have to download the patch manually, create a new branch, >> apply it and create a commit for it. Having `arc patch` would be a really >> great improvement to that - since it also does arc specific stuff I believe >> that I can't do manually (like arc diff telling me which patch to commit). >> >> Is there a way I can make it work? >> >> Thanks >> P.S: I'm not on llvm-dev list, so any replies would have to mention my >> email I guess :) >> - Nicolas >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org >> https://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/20190208/6434a063/attachment.html>