Commit Graph

68 Commits

Author SHA1 Message Date
Avery Pennarun
d344532afd Weird, I forgot to have 'make test' call test.sh. 2009-11-20 19:43:47 -05:00
Ben Walton
d20ac24c2f make git version dynamic when building documentation
Signed-off-by: Ben Walton <bwalton@artsci.utoronto.ca>
2009-11-15 12:18:15 -05:00
Ben Walton
0d31de303f add installation support to Makefile
Signed-off-by: Ben Walton <bwalton@artsci.utoronto.ca>
2009-11-15 12:18:13 -05:00
Avery Pennarun
d8b2c0da17 Oops, forgot a COPYING file. It's GPLv2.
Thanks to Ben Walton for pointing this out.
2009-11-15 12:13:19 -05:00
Avery Pennarun
c567d9e59f Add some tips for how to install. 2009-11-04 14:50:33 -05:00
Avery Pennarun
e31d1e2f30 cmd_pull didn't support --squash correctly.
We should implement it as
	git fetch ...
	git subtree merge ...

But we were instead just calling
	git pull -s subtree ...

because 'git subtree merge' used to be just an alias for 'git merge -s
subtree', but it no longer is.
2009-10-02 18:23:54 -04:00
Avery Pennarun
2275f7077d Fix a minor problem in identifying squashes vs. normal splits.
This didn't seem to have any noticeable side effects other than
suspicious-looking log messages when you used -d.
2009-10-02 16:09:48 -04:00
Avery Pennarun
6f2012cdc0 If someone provides a --prefix that ends with slash, strip the slash.
Prefixes that differ only in the trailing slash should be considered
identical.

Also update the test to check that this works.
2009-10-02 16:08:58 -04:00
Avery Pennarun
39ee6ecf7e Merge branch 'master' of git://github.com/voxpelli/git-subtree
* 'master' of git://github.com/voxpelli/git-subtree:
  Check that the type of the tree really is a tree and not a commit as it seems to sometimes become when eg. a submodule has existed in the same position previously.
2009-10-02 14:53:35 -04:00
Avery Pennarun
add00a3229 Add a README that says to email me instead of using github mail.
What's with this new generation who hates email so much?
2009-10-02 11:51:25 -04:00
Pelle Wessman
8ac5eca1ea Check that the type of the tree really is a tree and not a commit as it seems to sometimes become when eg. a submodule has existed in the same position previously. 2009-09-30 14:29:42 +02:00
Avery Pennarun
227f781147 Fix behaviour if you have a branch named the same as your --prefix
We were trying to 'git checkout $prefix', which is ambiguous if $prefix
names a directory *and* a branch.  Do 'git checkout -- $prefix' instead.

The main place this appeared was in 'git subtree add'.

Reported by several people.
2009-08-26 10:45:13 -04:00
Avery Pennarun
33aaa697a2 Improve patch to use git --exec-path: add to PATH instead.
If you (like me) are using a modified git straight out of its source
directory (ie. without installing), then --exec-path isn't actually correct.
Add it to the PATH instead, so if it is correct, it'll work, but if it's
not, we fall back to the previous behaviour.
2009-08-26 10:42:27 -04:00
kTln2
2987e6add3 Add explicit path of git installation by 'git --exec-path'.
As pointed out by documentation, the correct use of 'git-sh-setup' is
using $(git --exec-path) to avoid problems with not standard
installations.

Signed-off-by: gianluca.pacchiella <pacchiel@studenti.ph.unito.it>
2009-08-20 13:25:29 -04:00
Amiel Martin
558e7a57e2 sort assertion to make it more generic 2009-08-12 15:38:00 -07:00
Amiel Martin
e1a5b9d3e7 fixed order of assertion in tests 2009-08-12 15:25:18 -07:00
Avery Pennarun
ef7596677c todo: idea for a 'git subtree grafts' command 2009-08-02 17:48:41 -04:00
Avery Pennarun
0af6aa4675 todo 2009-08-01 01:19:48 -04:00
Avery Pennarun
344f58abe5 todo^ 2009-07-16 14:31:50 -04:00
Avery Pennarun
5d1a5da411 todo 2009-07-10 15:14:33 -04:00
Avery Pennarun
b64a7aa26c Docs: when pushing to github, the repo path needs to end in .git
Reported by Thell Fowler.
2009-07-08 20:17:31 -04:00
Avery Pennarun
76a7356f56 todo 2009-07-07 17:41:38 -04:00
Avery Pennarun
6aa76263ee Some todo items reported by pmccurdy 2009-07-02 12:39:48 -04:00
Avery Pennarun
c8a98d4f87 update todo 2009-06-15 14:12:40 -04:00
Avery Pennarun
dd07906252 man page: add an EXAMPLES section. 2009-05-30 14:24:31 -04:00
Avery Pennarun
e75d1da38a Add basic git-subtree manpage in asciidoc format. 2009-05-30 14:06:58 -04:00
Avery Pennarun
d713e2d87a Make --squash work with the 'add' command too. 2009-05-30 04:13:47 -04:00
Avery Pennarun
1a8c36dc5f Fix splitting after using a squash merge. 2009-05-30 03:33:39 -04:00
Avery Pennarun
eb4fb91094 Don't squash-merge if the old and new commits are the same. 2009-05-30 03:33:17 -04:00
Avery Pennarun
1cc2cfff91 Basic "subtree merge --squash" support.
Instead of merging in the history of the entire subproject, just squash it
all into one commit, but try to at least track which commits we used so that
we can do future merges correctly.

Bonus feature: we can actually switch branches of the subproject this way,
just by "squash merging" back and forth from one tag to another.
2009-05-30 03:18:27 -04:00
Avery Pennarun
7ee9eef340 merge_msg() is really more like rejoin_msg(). 2009-05-30 01:51:38 -04:00
Avery Pennarun
8e79043c47 FIXME help for --squash option 2009-05-30 01:12:58 -04:00
Avery Pennarun
f4f29557e7 slightly rearrange help message for split. 2009-05-30 01:12:34 -04:00
Avery Pennarun
43a3951243 New --branch option to split command.
This is just a handy way to create a new branch from the newly-split subtree.
2009-05-30 01:12:32 -04:00
Avery Pennarun
f96bc79019 typo in comment 2009-05-30 00:47:59 -04:00
Avery Pennarun
7b7ba4bb37 More to-do items based on feedback 2009-05-24 15:29:25 -04:00
Avery Pennarun
ea28d67442 Abort if --rejoin fails.
Thanks to Eduardo Kienetz for noticing this.
2009-04-30 21:57:32 -04:00
Avery Pennarun
942dce5578 debug messages are off by default; use -d to enable.
Instead of debug messages, we print a progress counter to stderr.
2009-04-26 18:06:08 -04:00
Avery Pennarun
34a82bda77 test.sh: oops, never intended to count the raw number of commits.
Just needed to make sure the count was non-zero.
2009-04-26 18:05:49 -04:00
Avery Pennarun
795e730e71 Simplify merges even more aggressively.
If any one of the parents is the same as the current one, then clearly the
other parent branch isn't important, so throw it away entirely.

Can't remember why I didn't do this before, but if I rediscover it, it
definitely needs a unit test.
2009-04-26 17:44:18 -04:00
Avery Pennarun
fa16ab36ad test.sh: make sure no commit changes more than one file at a time. 2009-04-26 17:43:53 -04:00
Avery Pennarun
49cf82288a Only copy a commit if it has at least one nonidentical parent.
This is a simplification of the previous logic.  I don't *think* it'll break
anything.

Results in far fewer useless merge commmits when playing with gitweb in the
git project:

git subtree split --prefix=gitweb --annotate='(split) ' 0a8f4f0^^..f2e7330
	--onto=1130ef3

...and it doesn't *seem* to eliminate anything important.
2009-04-26 17:07:16 -04:00
Avery Pennarun
a64f3a7286 Trim some extra merge commits that don't need to go into the split tree.
...and update test.sh to test for this.
2009-04-26 16:53:57 -04:00
Avery Pennarun
a046c7b124 test.sh tweak 2009-04-26 16:33:38 -04:00
Avery Pennarun
1490e1546a Add some basic assertions to test.sh. 2009-04-26 16:31:27 -04:00
Avery Pennarun
0ad3dd8534 Add a 'create' helper function in test.sh. 2009-04-26 15:55:56 -04:00
Avery Pennarun
1f73862f3b Clarify why we can't do 'git rev-list' with a path. 2009-04-26 15:54:42 -04:00
Avery Pennarun
86de04c6eb Typo when searching for existing splits. 2009-04-26 09:55:59 -04:00
Avery Pennarun
d0eb1b1417 Add --annotate option, and create recognizable file content during tests. 2009-04-26 08:59:12 -04:00
Avery Pennarun
8c384754d8 todo list 2009-04-26 08:53:14 -04:00