Hello,
I am trying to access https://git.llvm.org/git/llvm to be able to cherry pick some of the recent commits I did in the monorepo into our downstream llvm-only repository.
The host seems defunct, is this part of the move to the monorepo?
I think I can just get the patch and remove the `llvm` on top of the paths, but that’s not a scalable approach.
Francesco
pogo59
November 14, 2019, 10:01pm
#2
Francesco Petrogalli via llvm-dev
I am trying to access https://git.llvm.org/git/llvm to be able to cherry
pick some of the recent commits I did in the monorepo into our downstream
llvm-only repository.
The host seems defunct, is this part of the move to the monorepo?
Yes, the repo is at https://github.com/llvm/llvm-project.git now.
I think I can just get the patch and remove the `llvm` on top of the
paths, but that’s not a scalable approach.
We used to use -Xsubtree (I think that's the correct spelling) for
accommodating changes in the directory layout. That might help.
--paulr
I think I can just get the patch and remove the `llvm` on top of the paths, but that’s not a scalable approach.
IIRC, the -p option of 'patch' is exactly for doing this. Would that simplify your use-case?
I think I can just get the patch and remove the `llvm` on top of the paths, but that’s not a scalable approach.
IIRC, the -p option of 'patch' is exactly for doing this. Would that simplify your use-case?
Yes, for a single patch that would work. If there is a way to do that also when `git cherry-picking` from monorepo to llvm-only it would be great.
Francesco
This what `llvm-mirror` used to do, but it is behind now, as SVN hosts are offline as well:
https://github.com/llvm-mirror/llvm
Will Dietz mentioned that he would want to offload maintenance of mirror to somebody else eventually:
http://lists.llvm.org/pipermail/llvm-dev/2019-July/133869.html
Mirrors of individual projects have the downside that git hashes would not be compatible with the monorepo.
-Petr
bogner
December 4, 2019, 3:34pm
#6
Francesco Petrogalli via llvm-dev <llvm-dev@lists.llvm.org> writes:
I think I can just get the patch and remove the `llvm` on top of
the paths, but that’s not a scalable approach.
IIRC, the -p option of 'patch' is exactly for doing this. Would that
simplify your use-case?
Yes, for a single patch that would work. If there is a way to do that
also when `git cherry-picking` from monorepo to llvm-only it would be
great.
As Paul implied, you may be able to use git's "subtree" merge strategy
to help with this:
git cherry-pick -Xsubtree=llvm ...
The `-Xsubtree=llvm` flag also works with other git commands like merge
and rebase if you need to do something more complicated.
Francesco Petrogalli via llvm-dev <llvm-dev@lists.llvm.org> writes:
I think I can just get the patch and remove the `llvm` on top of
the paths, but that’s not a scalable approach.
IIRC, the -p option of 'patch' is exactly for doing this. Would that
simplify your use-case?
Yes, for a single patch that would work. If there is a way to do that
also when `git cherry-picking` from monorepo to llvm-only it would be
great.
As Paul implied, you may be able to use git's "subtree" merge strategy
to help with this:
git cherry-pick -Xsubtree=llvm ...
The subtree strategy worked perfectly, thank you!
> $ git cherry-pick -Xsubtree=llvm eac93757c39bbd2b2290d7543619eebd770c3141
[SHOJICOMP-4520 d6b529e] [VectorUtils] API for VFShape, update VFInfo.
5 files changed, 292 insertions(+), 8 deletions(-)
Francesco