Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RFC: use 'git subtree' instead of 'git submodules' #136

Closed
wants to merge 252 commits into from
Closed

Conversation

moritz
Copy link
Collaborator

@moritz moritz commented Feb 20, 2015

git submodule is very easy to set up, but shifts the responsibility of syncing it to the user -- hence the git submodule init and git submodule update calls in bootstrap.pl and rebootstrap.pl.

With this pull request,I'd like to discuss the possibility of moving to git subtree instead. Compare http://blogs.atlassian.com/2013/05/alternatives-to-git-submodule-git-subtree/ for example. It presents the user a normal git repo, where git grep, git archive etc work for the ext/ subdirs as usual. The commands for updating them are a bit more bulky, which is why I included a small helper script to update them.

The large number of comits in this pull requests comes from importing the commits of the projects in ext/. If this is not desirable, I can import them as single commits (with --squash).

(An alternative to subtree would be https://github.com/ingydotnet/git-subrepo which maintains the meta data a bit more nicely, but isn't in git core, and comes with its own sets of tradeoffs.

So, what do you think?

moritz and others added 30 commits March 23, 2009 22:49
Not yet working, and actually triggering a segfault
(This requires at least Rakudo 931d23d3 because it comes with lots of
improvements on Match objects)
The last test actually fails right now, I suspect it's line 7 of Action.pm,
    make hash ( $<pairlist>.ast )
Somehow that seems to return a Pair, not a Hash - and I haven't found ot why
FROGGS and others added 27 commits February 14, 2014 22:40
use smartmatch to compare paths
add provides section needed for S11
Rakudo does not get confused by it these days :-)
New README.md for the project that replaces the old README
…6df02a'

git-subtree-dir: ext/File__Find
git-subtree-mainline: 68d34de
git-subtree-split: 283045f
…f6dd0a'

git-subtree-dir: ext/JSON__Tiny
git-subtree-mainline: b7f612e
git-subtree-split: 4148627
…e51c723f61'

git-subtree-dir: ext/Shell__Command
git-subtree-mainline: ae21e25
git-subtree-split: 3a82d4b
@moritz
Copy link
Collaborator Author

moritz commented Feb 20, 2015

PR #137 is the same as this one, but with 'git subtree add ... --squash', so that we don't pull in all the history from the three external projects.

@moritz moritz closed this Feb 20, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet