Re: git-gui: missing some patches from git?

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

 



On Wed, Sep 18, 2019 at 09:02:37AM +0200, Birger Skogeng Pedersen wrote:
> Hi Pratyush,
> 
> 
> I was comparing your git-gui repo[1] with the source code of
> git/git-gui[2]. There seems to be a couple of things missing.
> 
> For example, I created a patch back in March 2018[3]. Junio pulled it
> so the changes are really there in git/git-gui/git-gui.sh (see this[4]
> line). This was while there was no git-gui maintainer. I guess the
> change never got merged to git-gui, but directly to git.
> 
> Not sure what you should to about it, I just wanted to let you know.
> 
> [1] https://github.com/prati0100/git-gui
> [2] https://github.com/gitster/git/tree/master/git-gui
> [3] https://public-inbox.org/git/20180302100148.23899-1-birgersp@xxxxxxxxx/
> [4] https://github.com/gitster/git/blob/master/git-gui/git-gui.sh#L3885
> 
> 
> Birger

As an exercise in writing throwaway scripts, I created this monstrosity.
If you're interested in merging all of the git-gui branches that came
from mainline back into git-gui's master, perhaps we could do something
like this:

	#!/bin/sh

	branches=
	# note that all instances of "master" refer to git.git's "master"
	# also, 5ab7227 is the latest commit in Pat's git-gui repo
	for c in $(git rev-list --children master 5ab7227 | grep ^5ab7227 | cut -d' ' -f2-)
	do 
		merge_commit=$(git rev-list $c..master --ancestry-path --merges | tail -n1)
		branch_name=$(git show -s --format=%s $merge_commit | sed -e "s/Merge branch '\\([^']*\\)' of .*/\\1/")

		#echo $branch_name: $(git rev-parse $merge_commit^2)
		git branch -f "$branch_name" $merge_commit^2
		branches="$branches $branch_name"
	done
	# this also assumes git-gui's master is checked out
	git merge $branches

This script should resurrect all of the branches that were based on
5ab7227 from mainline's master. Then (assuming you have git-gui's
master checked out), it should do a big octopus merge to bring all of
the changes in.

We end up with the following branches being merged:

	js/msgfmt-on-windows: 492595cfc70f97cd99d4c460db1ba01b73dab932
	tz/fsf-address-update: 63100874c1653dd6a137f74143eda322550eabc7
	jn/reproducible-build: 474642b4a47c74a1f277955d7387d1886546fa01
	ls/no-double-utf8-author-name: 331450f18a7fd298ddd6b85cc5e8ed9dba09f9da
	js/misc-git-gui-stuff: 76756d67061076c046973bff2089ad49f5dc2eb6
	bb/ssh-key-files: 6a47fa0efa342daa53c6386538fda313420351a5
	bp/bind-kp-enter: 146a6f1097f451c6b6d332916a515b7ce8c07e9a
	cb/ttk-style: f50d5055bf9bb2aa35e629d31943334afc4a9f10
	py/call-do-quit-before-exit: 5440eb0ea2651c45a0e46f2335ecbb8d1f42c584

Then perhaps you could do a request-pull and development could continue
on your fork?

Not sure if this is even desirable but here's the script just in case it
ends up useful. I had fun writing it.

Also note that we end up missing two commits that made changes to
git-gui/ under mainline git (not directly to the git-gui repo): 

	* 7560f547e6 (treewide: correct several "up-to-date" to "up to date", 2017-08-23)
	* 00ddc9d13c (Fix build with core.autocrlf=true, 2017-05-09)

Hope any of this is useful to anyone,

Denton



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux