{"thread":{"id":"2949","subject":"how to find outstanding patches in non-linux-2.6 repositories?","startedAt":"2006-01-01T20:01:21Z","lastAt":"2006-01-04T01:26:59Z","messageCount":10,"participants":["Olaf Hering","Brian Gerst","Johannes Schindelin","Linus Torvalds","Jon Loeliger","Marco Roeland","Andreas Ericsson","Tom Prince"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"14116","messageId":"20060101200121.GA20633@suse.de","threadId":"2949","inReplyTo":null,"subject":"how to find outstanding patches in non-linux-2.6 repositories?","fromName":"Olaf Hering","fromEmail":"olh@suse.de","sentAt":"2006-01-01T20:01:21Z","receivedAt":"2006-01-01T20:01:21Z","isPatch":false,"sender":{"key":"olh@suse.de","avatar":null},"body":"\nHow do I get a list of commits in the 'powerpc' tree, which are not part\nof the 'linux-2.6' tree? The git tutorial has a section 'Working with\nOthers', but the examples dont work for me. Probably because\nrsync://rsync.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc.git has\nno info that it is not the \"mainline tree\".\nAll I need is a list of individual commits in that tree, which are not\n(yet) in \"mainline\". I could get them also from the ozlabs mailing\nlists, for the few patches I need. But it would be better if there is\nsome sort of automated way to extract a list of differences between two\ntrees.\n\n-- \nshort story of a lazy sysadmin:\n alias appserv=wotan\n"},{"id":"14117","messageId":"43B83EBC.9070905@didntduck.org","threadId":"2949","inReplyTo":"20060101200121.GA20633@suse.de","subject":"Re: how to find outstanding patches in non-linux-2.6 repositories?","fromName":"Brian Gerst","fromEmail":"bgerst@didntduck.org","sentAt":"2006-01-01T20:42:36Z","receivedAt":"2006-01-01T20:42:36Z","isPatch":false,"sender":{"key":"bgerst@didntduck.org","avatar":null},"body":"Olaf Hering wrote:\n> How do I get a list of commits in the 'powerpc' tree, which are not part\n> of the 'linux-2.6' tree? The git tutorial has a section 'Working with\n> Others', but the examples dont work for me. Probably because\n> rsync://rsync.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc.git has\n> no info that it is not the \"mainline tree\".\n> All I need is a list of individual commits in that tree, which are not\n> (yet) in \"mainline\". I could get them also from the ozlabs mailing\n> lists, for the few patches I need. But it would be better if there is\n> some sort of automated way to extract a list of differences between two\n> trees.\n> \n\nPull the powerpc tree into your local repo, then do something like:\ngit-whatchanged master..powerpc\nor\ngitk master..powerpc\n\n--\n\t\t\t\tBrian Gerst\n"},{"id":"14118","messageId":"20060101210429.GA22033@suse.de","threadId":"2949","inReplyTo":"43B83EBC.9070905@didntduck.org","subject":"Re: how to find outstanding patches in non-linux-2.6 repositories?","fromName":"Olaf Hering","fromEmail":"olh@suse.de","sentAt":"2006-01-01T21:04:39Z","receivedAt":"2006-01-01T21:04:39Z","isPatch":false,"sender":{"key":"olh@suse.de","avatar":null},"body":" On Sun, Jan 01, Brian Gerst wrote:\n\n> Pull the powerpc tree into your local repo, then do something like:\n> git-whatchanged master..powerpc\n> or\n> gitk master..powerpc\n\nThis worked for me:\n\nmkdir /dev/shm/x\ncd /dev/shm/x\nrsync -Ha --delete ~/kernel/git/{powerpc,linux-2.6} .\ncd linux-2.6/\ncat .git/HEAD  > ../start\ngit-pull /dev/shm/x/powerpc\ncat .git/HEAD  > ../end\ngit-format-patch `cat ../start` `cat ../end`\nview ????-*\n\n\n\n-- \nshort story of a lazy sysadmin:\n alias appserv=wotan\n"},{"id":"14120","messageId":"Pine.LNX.4.63.0601012228470.32311@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"2949","inReplyTo":"20060101210429.GA22033@suse.de","subject":"Re: how to find outstanding patches in non-linux-2.6 repositories?","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2006-01-01T21:32:27Z","receivedAt":"2006-01-01T21:32:27Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Sun, 1 Jan 2006, Olaf Hering wrote:\n\n>  On Sun, Jan 01, Brian Gerst wrote:\n> \n> > Pull the powerpc tree into your local repo, then do something like:\n> > git-whatchanged master..powerpc\n> > or\n> > gitk master..powerpc\n> \n> This worked for me:\n> \n> mkdir /dev/shm/x\n> cd /dev/shm/x\n> rsync -Ha --delete ~/kernel/git/{powerpc,linux-2.6} .\n> cd linux-2.6/\n> cat .git/HEAD  > ../start\n> git-pull /dev/shm/x/powerpc\n> cat .git/HEAD  > ../end\n> git-format-patch `cat ../start` `cat ../end`\n> view ????-*\n\nPreferrable is the following:\n\ncd /existing/clone/of/ppc-linux # OP said he had this already\ngit fetch \\\n  git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git \\\n  master:refs/heads/linus\ngit-whatchanged linus..HEAD\n\nHth,\nDscho\n"},{"id":"14122","messageId":"Pine.LNX.4.64.0601011452230.3668@g5.osdl.org","threadId":"2949","inReplyTo":"20060101200121.GA20633@suse.de","subject":"Re: how to find outstanding patches in non-linux-2.6 repositories?","fromName":"Linus Torvalds","fromEmail":"torvalds@osdl.org","sentAt":"2006-01-01T23:09:54Z","receivedAt":"2006-01-01T23:09:54Z","isPatch":false,"sender":{"key":"torvalds@linux-foundation.org","avatar":"https://avatars.githubusercontent.com/u/1024025?v=4"},"body":"\n\nOn Sun, 1 Jan 2006, Olaf Hering wrote:\n> \n> How do I get a list of commits in the 'powerpc' tree, which are not part\n> of the 'linux-2.6' tree? The git tutorial has a section 'Working with\n> Others', but the examples dont work for me. Probably because\n> rsync://rsync.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc.git has\n> no info that it is not the \"mainline tree\".\n> All I need is a list of individual commits in that tree, which are not\n> (yet) in \"mainline\".\n\nFirst, get a kernel tree, let's say that you just get the standard one \nand thus my head will be in \"origin\" (and perhaps HEAD too, unless you \ndecide to do some stuff of your own). Then just do something like\n\n   git fetch \\\n\tgit://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc.git \\\n\tmaster:powerpc\n\nwhich gets the master branch from the powerpc.git tree into your \"powerpc\" \nbranch (or set up a .git/remotes/powerpc thing if you expect to do more of \nthis).\n\nThen you can just do\n\n\tgitk origin..powerpc\n\n(or \"git log\" or \"git-whatchanged -p\" instead of \"gitk\") to see the \ncommits that are in powerpc but not in \"origin\".\n\n\t\tLinus\n"},{"id":"14142","messageId":"1136315518.11946.28.camel@cashmere.sps.mot.com","threadId":"2949","inReplyTo":"Pine.LNX.4.63.0601012228470.32311@wbgn013.biozentrum.uni-wuerzburg.de","subject":"Re: how to find outstanding patches in non-linux-2.6 repositories ?","fromName":"Jon Loeliger","fromEmail":"jdl@freescale.com","sentAt":"2006-01-03T19:11:58Z","receivedAt":"2006-01-03T19:11:58Z","isPatch":false,"sender":{"key":"jdl@jdl.com","avatar":"https://gravatar.com/avatar/75ce9a10b151acd2c28ec4ab2136dba7b2ff1634530bd04b155981a749d08a64?d=mp&s=160"},"body":"On Sun, 2006-01-01 at 15:32, Johannes Schindelin wrote:\n> Preferrable is the following:\n> \n> cd /existing/clone/of/ppc-linux # OP said he had this already\n> git fetch \\\n>   git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git\n> \\\n>   master:refs/heads/linus\n> git-whatchanged linus..HEAD\n\nCould someone remind me where the <ref>..<ref> syntax\nis documented, please?  I went digging, but I am lame\nand couldn't find it.\n\nThanks,\njdl\n"},{"id":"14143","messageId":"20060103192103.GA15002@fiberbit.xs4all.nl","threadId":"2949","inReplyTo":"1136315518.11946.28.camel@cashmere.sps.mot.com","subject":"Re: how to find outstanding patches in non-linux-2.6 repositories ?","fromName":"Marco Roeland","fromEmail":"marco.roeland@xs4all.nl","sentAt":"2006-01-03T19:21:03Z","receivedAt":"2006-01-03T19:21:03Z","isPatch":false,"sender":{"key":"marco.roeland@xs4all.nl","avatar":null},"body":"On Tuesday January 3rd 2006 Jon Loeliger wrote:\n\n> Could someone remind me where the <ref>..<ref> syntax\n> is documented, please?  I went digging, but I am lame\n> and couldn't find it.\n\nIt is in the documentation for git-rev-list:\n\nIn the \"Description\" section for git-rev-list:\n\nA special notation <commit1>..<commit2> can be used as a short-hand for\n^<commit1> <commit2>.\n-- \nMarco Roeland\n"},{"id":"14144","messageId":"43BAD1F2.8040209@op5.se","threadId":"2949","inReplyTo":"1136315518.11946.28.camel@cashmere.sps.mot.com","subject":"Re: how to find outstanding patches in non-linux-2.6 repositories ?","fromName":"Andreas Ericsson","fromEmail":"ae@op5.se","sentAt":"2006-01-03T19:35:14Z","receivedAt":"2006-01-03T19:35:14Z","isPatch":false,"sender":{"key":"ae@op5.se","avatar":"https://gravatar.com/avatar/426e89595c75a8f5252dd0c989e5fabe5bcac616e68557427ad9aef6b0ca342a?d=mp&s=160"},"body":"Jon Loeliger wrote:\n> \n> Could someone remind me where the <ref>..<ref> syntax\n> is documented, please?  I went digging, but I am lame\n> and couldn't find it.\n> \n\n'man git-rev-parse' gets you the <committish> explanation. A ref is tag \nor a branch, and those are committish. A range such as \n<committish1>..<committish2> means \"include all commits since and \nincluding <committish1>, leading up to (and including) <committish2>\".\n\nWhen Linus generates patches for the kernel he uses tags as <committish> \nand does something like this:\ngit diff v2.6.14..v2.6.15 | gzip -9f > linux-2.6.14-2.6.15.patch.gz\n\nYou can mix tags, commits and branches any way you like, so long as you \nget the commitological order right. That is, <committish2> should refer \nto a descendant of <committish1>.\n\n\"origin..HEAD\" is a valid and fairly common range.\n\"HEAD..origin\" is not (well, it is, but it doesn't include any commits \nsince it's going backwards).\n\nI don't know where to find a more complete explanation, but at least \ngoogle should provide this one once it has gotten round to indexing this \nmail.\n\nNow lets just have to hope I didn't get it all wrong. :)\n\n-- \nAndreas Ericsson                   andreas.ericsson@op5.se\nOP5 AB                             www.op5.se\nTel: +46 8-230225                  Fax: +46 8-230231\n"},{"id":"14145","messageId":"Pine.LNX.4.64.0601031123150.3668@g5.osdl.org","threadId":"2949","inReplyTo":"1136315518.11946.28.camel@cashmere.sps.mot.com","subject":"Re: how to find outstanding patches in non-linux-2.6 repositories ?","fromName":"Linus Torvalds","fromEmail":"torvalds@osdl.org","sentAt":"2006-01-03T19:41:15Z","receivedAt":"2006-01-03T19:41:15Z","isPatch":false,"sender":{"key":"torvalds@linux-foundation.org","avatar":"https://avatars.githubusercontent.com/u/1024025?v=4"},"body":"\n\nOn Tue, 3 Jan 2006, Jon Loeliger wrote:\n> \n> Could someone remind me where the <ref>..<ref> syntax\n> is documented, please?  I went digging, but I am lame\n> and couldn't find it.\n\nHmm. It probably isn't. Technically, \"start..end\" is exactly the same \nthing as \"end\" + \"^start\", with an empty \"end\" being the same as HEAD (an \nempty \"start\" is largely meaningless and isn't supported - we _could_ make \nit mean the same as just specifying \"end\").\n\nYou can see this with \"git-rev-parse\":\n\n\t[torvalds@g5 linux]$ git-rev-parse v2.6.12..v2.6.15\n\t88026842b0a760145aa71d69e74fbc9ec118ca44\n\t^26791a8bcf0e6d33f43aef7682bdb555236d56de\n\nie it really does literally that transformation.\n\nNOTE! Normally the \"a\" + \"^b\" format just means \"everything that is \nreachable through \"a\", but not reachable through \"b\". In other words, it \nalmost always ends up being a \"commit set operation\", and you can combine \nit with other \"set\" operations (like \"--before=<date>\" or other limiters).\n\nBut there is one special case: \"git diff\" will consider that to be a range \nof end-points, and will generate a diff from \"b\" to \"a\". It will do this \nregardless of whether \"a\" and \"b\" are even related, and it will _not_ care \nabout set differences.\n\nSo there's a very fundamental difference between two things that \n_syntactically_ look very similar:\n\n\tgit log a..b\n\nand \n\n\tgit diff a..b\n\nmay look like they are related, but they really really are not. They are \nvery very different.\n\nThe \"git log\" thing will show the commit log for every commit that is in \n\"b\" but not in \"a\". HOWEVER, if there's something in \"a\" that is not in \n\"b\" it will totally ignore it - it _literally_ means \"show everything that \nis reachable from \"b\" but not reachable from \"a\". \n\nSo doing \"git log a..b\" and \"git log b..a\" are _not_ \"reverse\" operations. \nThey show totally disjunct sets. If one is a superset of the other, one of \nthose will be empty. But if they have different development, the two \"git \nlog\" commands will show what happened on one side but not the other.\n\nIn contrast, \"git diff a..b\" will show the raw differences between two \nheads. So doing \"git diff a..b\" and \"git diff b..a\" is exactly the same \nthing, the diff will just be \"reversed\". It's not an operation on a set of \ncommits: it's purely an operation on the two end-points.\n\nSo keep this in mind: the meaning of \"a..b\" actually depends on the \noperation you do, although in all cases it will be exactly equivalent to \n\"a\" and \"^b\" (with the special case for an empty \"a\" meaning HEAD).\n\n\t\t\tLinus\n"},{"id":"14155","messageId":"20060104012659.GA2353@socrates","threadId":"2949","inReplyTo":"43BAD1F2.8040209@op5.se","subject":"Re: how to find outstanding patches in non-linux-2.6 repositories ?","fromName":"Tom Prince","fromEmail":"tom.prince@ualberta.net","sentAt":"2006-01-04T01:26:59Z","receivedAt":"2006-01-04T01:26:59Z","isPatch":false,"sender":{"key":"tom.prince@ualberta.net","avatar":"https://gravatar.com/avatar/a0ad19caee7618876339485106ec994f5202505eecd210ba5c0bd869feaa555a?d=mp&s=160"},"body":"On Tue, Jan 03, 2006 at 08:35:14PM +0100, Andreas Ericsson wrote:\n> \"origin..HEAD\" is a valid and fairly common range.\n> \"HEAD..origin\" is not (well, it is, but it doesn't include any commits \n> since it's going backwards).\n> \n\nIt depends on what you are doing. When I update my git repository, I do\n\ngit fetch\ngit-whatchanged master..origin\ngit pull\n\nto find out what changed since I last updated.\n"}]}