Re: "tla missing -s" equivalent with git/cogito
From: Martin Langhoff <hidden>
Date: 2016-06-15 22:42:16
Andreas' response is good is you're into pure git. Let me add some cogito tricks ;-) On 1/19/06, Belmar-Letelier [off-list ref] wrote:
arch-tla equivalent of $ cd project--luis--0.1 $ tla missing -sD paul@mail.com--public/project--paul--0.1
$ cd project-luis # only if have to do cg-branch-add the first time! $ cg-branch-add paul http://server/git/project.git $ cg-fetch paul # show what paul has that we don't $ cg-log -r master:paul $ cg-diff -r master:paul # show what we have that paul doesn't $ cg-log -r paul:master $ cg-diff -r master:paul You can also do $ cg-diff -r master:paul
so I get the information like what are the interesting patch to get and then I take all of them with $ tla star-merge -t paul@mail.com--public/project--paul--0.1
# if you've done cg-fetch paul and reviewed it what you're about to merge, just do cg-merge paul # otherwise, for a shortcut of cg-fetch <branch> && cg-merge <branch> do $ cg-update paul
or I cherry pick only one of them (here patch-6) with $ tla replay somefriend@mail.com--public/project--branchA--0.1--patch-6
# export the patches paul has that we don't $ mkdir .patchesfrompaul $ git-format-patch --mbox --signoff -o .patchesfrompaul master paul # review the contents of .patchesfrompaul and decide what patches you want $ git-am -3 .patchesfrompaul/0006-fix-frob-invocation.txt Note that git does not track patch application _explicitly_ like Arch does, it tracks them only indirectly. Merges (tla star-merge type of merges) are recorded explicitly. This work surprisingly well. If you do a cg-update, cg-merge or git-merge, git will keep a good record of what points of the history have been merged. When you cherry pick patches, if the patch applies cleanly, the next time you do a merge from that branch it will be skipped automagically. If the patch needs serious editing, there's a good chance that git will try to apply it again. cheers. martin