Platform Team/gatch: Difference between revisions

Created page with "== Summary == Support long or ever standing, all time being on top, downstream patchsets in a Git repository. == Install == Clone Gatch repository: git clone git://git.sugar..."
 
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Summary ==
== Summary ==


Support long or ever standing, all time being on top, downstream patchsets in a Git repository.
Support long or ever standing, all time being on top, downstream patchsets in a Git repository. This tool is intended to be lightweight and support only long or ever standing downstream patches.
For the rest of use cases, look for the [[#See_also|alternatives]].


== Install ==
== Install ==
Line 63: Line 64:


''Upstream merge right after clone''
''Upstream merge right after clone''
: {{Code|init}} command keeps all information regarding upstream repository and branch in {{Code|.sweets/gatch*}} files. So, it is possible to clone downstream branch and run {{Code|merge}} command, gatch will add upstream remote if it absent in local repository.
: {{Code|init}} command keeps all information regarding upstream repository and branch in {{Code|.sweets/gatch*}} files controlled by git. So, it is possible to clone downstream branch and run {{Code|merge}} command, gatch will add upstream remote if it absent in local repository.


''Avoid upstream merge history''
''Avoid upstream merge history''
: Gatch does not break Git history, thus, it is possible to see downstream commits that existed before every upstream merge. It is useful to {{Code|git --hard reset}} sometimes, but might be annoying to see all of them in {{Code|git log}} output. To suppress showing these commits, use {{Code|git log --first-parent}} command.
: Gatch does not break Git history, thus, it is possible to see downstream commits that existed before every upstream merge. It is useful to {{Code|git --hard reset}} sometimes, but might be annoying to see all of them in {{Code|git log}} output. To suppress showing these commits, use {{Code|git log --first-parent}} command.
== See also ==
* [http://www.kernel.org/pub/linux/kernel/people/jsipek/guilt/ guilt]<br>A series of bash scripts which add a quilt-like interface to git.
* [http://www.procode.org/stgit/ stgit]<br>Manage a stack of patches using GIT as a backend.
* [http://repo.or.cz/w/topgit.git topgit]<br>A different patch queue manager.


== Getting involved ==
== Getting involved ==