Re: [PATCHv2] Warnings before rebasing -i published history

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Lucien Kong <Lucien.Kong@xxxxxxxxxxxxxxx> writes:

> "git rebase -i" can be very dangerous if used on an already published
> history. This code detects that one is rewriting a commit that is an
> ancestor of a remote-tracking branch, and warns the user through the
> editor. This feature is controlled by a new config key
> rebase.checkremoterefs.

For the lazy, you could provide an example of result in the commit
message. People don't want to review how the patch is written if they
disagree with the result.

> +		two_sha1=$(echo "$tmp" | sed -n 1p) &&
> +		three_sha1=$(echo "$tmp" | sed -n 2p) &&
> +		four_sha1=$(echo "$tmp" | sed -n 3p) &&

IIRC, the test suite was made to give reproducible sha1, so you
shouldn't need these.

> +		echo "pick $two_sha1 two_commit" >expected &&
> +		echo "# Commit above this line appear in: origin/master" >>expected &&
> +		echo "pick $three_sha1 three_commit" >>expected &&
> +		echo "# Commit above this line appear in: origin/master" >>expected &&
> +		echo "pick $four_sha1 four_commit" >>expected &&
> +		test_cmp expected actual

You don't want to repeat "Commit above this line" for each commit. What
I meant in my previous suggestion was

pick foo
pick bar
# Commits above this line appear in origin/master
pick boz

i.e. just show where the remote points once.

Matthieu Moy
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at

[Newbies FAQ]     [Linux Kernel Development]     [Free Online Dating]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Free Online Dating]     [Photo]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]     [Linux Resources]

Add to Google