Thread (10 messages) flat view 10 messages, 3 authors, 2016-06-15

Re: Re: [PATCH v2 4/4] implement automatic fast forward merge for submodules

From: Heiko Voigt <hidden>
Date: 2016-06-15 22:49:05

Hi,

On Wed, Jul 07, 2010 at 01:52:16AM +0200, Johan Herland wrote:
On Tuesday 06 July 2010, Heiko Voigt wrote:
[...]
quoted
+	/* get all revisions that merge commit a */
+	snprintf(merged_revision, sizeof(merged_revision), "^%s",
+			find_unique_abbrev(a->object.sha1, 40));
Why do you call find_unique_abbrev(..., 40) here?
Isn't sha1_to_hex(a->object.sha1) a better solution?
Because I did not know it better at the time I wrote this :) Will be
corrected.
quoted
+	init_revisions(&revs, NULL);
+	rev_opts.submodule = path;
+	setup_revisions(sizeof(rev_args)/sizeof(char *)-1, rev_args, &revs, &rev_opts);
+
+	/* save all revisions from the above list that contain b */
+	if (prepare_revision_walk(&revs))
+		die("revision walk setup failed");
+	while ((commit = get_revision(&revs)) != NULL) {
+		struct object *o = &(commit->object);
+		if (in_merge_bases(b, (struct commit **) &o, 1)) {
Why not s/(struct commit **) &o/&commit/ ?
Similar, because I needed objects for the array. Will be corrected.
quoted
+	 (cd sub &&
+	  git rev-parse sub-d > ../expect) &&
+	 test_cmp actual expect)
+'
+
+test_expect_success 'merging should conflict for non fast-forward' '
+	(cd merge-search &&
+	 git checkout -b test-nonforward b &&
+	 (cd sub &&
+	  git rev-parse sub-d > ../expect) &&
+	 test_must_fail 	git merge c 2> actual  &&
+	 grep $(<expect) actual > /dev/null &&
I cannot find the "$(<expect)" construct anywhere else in out test scripts.
Is it portable? Should we maybe use "$(cat expect)" instead?
I do not know. Just to be sure I will change it to cat.
Otherwise, it looks good to me. Thanks for the effort!
Thank you as well. The rest of the comments are already incorporated.

cheers Heiko
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help