{"thread":{"id":"6721","subject":"MinGW binary installer available","startedAt":"2007-02-07T14:38:40Z","lastAt":"2007-02-08T21:26:05Z","messageCount":28,"participants":["Han-Wen Nienhuys","Johannes Schindelin","Jan Nieuwenhuizen","Johannes Sixt","Robin Rosenberg","Shawn O. Pearce"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"33806","messageId":"45C9E470.7030609@xs4all.nl","threadId":"6721","inReplyTo":null,"subject":"MinGW binary installer available","fromName":"Han-Wen Nienhuys","fromEmail":"hanwen@xs4all.nl","sentAt":"2007-02-07T14:38:40Z","receivedAt":"2007-02-07T14:38:40Z","isPatch":false,"sender":{"key":"hanwen@google.com","avatar":"https://avatars.githubusercontent.com/u/31547?v=4"},"body":"Hi, \n\nI had a try to see whether I could make GUB\nalso produce a MinGW installer for Git.\n\nYou can download the result at \n\nhttp://lilypond.org/mingit/mingit-1.4.9993-1.mingw.exe\n\nthe odd version number was because I was too lazy to write code\nto extract the version number from the repository automatically.\n\nI don't actually have a windows copy, so it's basically untested.\nHowever, I did succeed in running rev-list in wine.\n\n\nPS. I'd be interested in comments on using GUB from others.\nGUB is a cross-compiling build tool, probably best described\nas a \"Poor Man's Conary\".\n \nOnce I have the boilerplate code committed, building this \ninstaller should amount to  \n\n  darcs get  http://lilypond.org/vc/gub.darcs/ gub\n  cd gub\n  make -f Makefile.mingit bootstrap mingw\n\n(yes, GUB itself is still hosted in Darcs. Shoot me.)\n\n\n-- \n Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen\n\n-- \n Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen\n"},{"id":"33807","messageId":"Pine.LNX.4.63.0702071552470.22628@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"6721","inReplyTo":"45C9E470.7030609@xs4all.nl","subject":"Re: MinGW binary installer available","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-02-07T14:55:58Z","receivedAt":"2007-02-07T14:55:58Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Wed, 7 Feb 2007, Han-Wen Nienhuys wrote:\n\n> I had a try to see whether I could make GUB\n> also produce a MinGW installer for Git.\n\nGreat!\n\n> You can download the result at \n> \n> http://lilypond.org/mingit/mingit-1.4.9993-1.mingw.exe\n> \n> the odd version number was because I was too lazy to write code\n> to extract the version number from the repository automatically.\n> \n> I don't actually have a windows copy, so it's basically untested.\n> However, I did succeed in running rev-list in wine.\n\nI played a little with it. IMHO it makes no sense to use it without a \nbash, and without less. For example,\n\n\t$ git init\n\t$ git add git.exe\n\t$ git status\n\t$ git commit -a -m initial\n\t$ git show HEAD\n\ndo not produce any output when issued in cmd.\n\nAlso, many scripts rely on bash and/or perl, so you'd have to include \nthem, too.\n\n> PS. I'd be interested in comments on using GUB from others.\n> GUB is a cross-compiling build tool, probably best described\n> as a \"Poor Man's Conary\".\n>  \n> Once I have the boilerplate code committed, building this \n> installer should amount to  \n> \n>   darcs get  http://lilypond.org/vc/gub.darcs/ gub\n>   cd gub\n>   make -f Makefile.mingit bootstrap mingw\n\nI'll try that if I get the time.\n\n> (yes, GUB itself is still hosted in Darcs. Shoot me.)\n\nI will.\n\nCiao,\nDscho\n"},{"id":"33809","messageId":"Pine.LNX.4.63.0702071559340.22628@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"6721","inReplyTo":"Pine.LNX.4.63.0702071552470.22628@wbgn013.biozentrum.uni-wuerzburg.de","subject":"Re: MinGW binary installer available","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-02-07T15:05:38Z","receivedAt":"2007-02-07T15:05:38Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Wed, 7 Feb 2007, Johannes Schindelin wrote:\n\n> On Wed, 7 Feb 2007, Han-Wen Nienhuys wrote:\n> \n> > I don't actually have a windows copy, so it's basically untested.\n> > However, I did succeed in running rev-list in wine.\n> \n> I played a little with it. IMHO it makes no sense to use it without a \n> bash, and without less.\n\nSide note: Since \"ln <src> <dest>\" in MinGW is really a copy, not a hard \nlink, this gets rather big (44M here).\n\nWhich makes me think if we should just disallow the \"git-<builtin>\" on \nWindows, since sooner or later, Git will no longer be used from the \ncommand line on Windows.\n\nAnd another thing hit me there: Are you sure that all works well if you \nchange the install path from \"C:\\Program Files\\Git\" to something else?\nWithout explicitely setting GIT_EXEC_PATH?\n\nCiao,\nDscho\n"},{"id":"33810","messageId":"45C9EB54.3040406@xs4all.nl","threadId":"6721","inReplyTo":"Pine.LNX.4.63.0702071552470.22628@wbgn013.biozentrum.uni-wuerzburg.de","subject":"Re: MinGW binary installer available","fromName":"Han-Wen Nienhuys","fromEmail":"hanwen@xs4all.nl","sentAt":"2007-02-07T15:08:04Z","receivedAt":"2007-02-07T15:08:04Z","isPatch":false,"sender":{"key":"hanwen@google.com","avatar":"https://avatars.githubusercontent.com/u/31547?v=4"},"body":"Johannes Schindelin escreveu:\n>> I don't actually have a windows copy, so it's basically untested.\n>> However, I did succeed in running rev-list in wine.\n> \n> I played a little with it. IMHO it makes no sense to use it without a \n> bash, and without less. For example,\n> \n> \t$ git init\n> \t$ git add git.exe\n> \t$ git status\n> \t$ git commit -a -m initial\n> \t$ git show HEAD\n> \n> do not produce any output when issued in cmd.\n> \n> Also, many scripts rely on bash and/or perl, so you'd have to include \n> them, too.\n\nIndeed: for now, this is intended for people clueful enough to install\nbash and perl on their own.  Adding bash itself should be easy, but\nI have no idea how to make cmd open the scripts with bash automatically.\n\nThe thought of x-compiling perl makes me shudder. \n\n-- \n Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen\n"},{"id":"33811","messageId":"45C9ECBE.6010705@xs4all.nl","threadId":"6721","inReplyTo":"Pine.LNX.4.63.0702071559340.22628@wbgn013.biozentrum.uni-wuerzburg.de","subject":"Re: MinGW binary installer available","fromName":"Han-Wen Nienhuys","fromEmail":"hanwen@xs4all.nl","sentAt":"2007-02-07T15:14:06Z","receivedAt":"2007-02-07T15:14:06Z","isPatch":false,"sender":{"key":"hanwen@google.com","avatar":"https://avatars.githubusercontent.com/u/31547?v=4"},"body":"Johannes Schindelin escreveu:\n> Hi,\n> \n> On Wed, 7 Feb 2007, Johannes Schindelin wrote:\n> \n>> On Wed, 7 Feb 2007, Han-Wen Nienhuys wrote:\n>>\n>>> I don't actually have a windows copy, so it's basically untested.\n>>> However, I did succeed in running rev-list in wine.\n>> I played a little with it. IMHO it makes no sense to use it without a \n>> bash, and without less.\n> \n> Side note: Since \"ln <src> <dest>\" in MinGW is really a copy, not a hard \n> link, this gets rather big (44M here).\n> \n> Which makes me think if we should just disallow the \"git-<builtin>\" on \n> Windows, since sooner or later, Git will no longer be used from the \n> command line on Windows.\n> \n> And another thing hit me there: Are you sure that all works well if you \n> change the install path from \"C:\\Program Files\\Git\" to something else?\n> Without explicitely setting GIT_EXEC_PATH?\n\nI have no idea. The installer just plonks the files into C:/P F/Git/\nand adds that to $INSTALLDIR/usr/bin/ to $PATH\n\n\n-- \n Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen\n"},{"id":"33812","messageId":"Pine.LNX.4.63.0702071625341.22628@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"6721","inReplyTo":"45C9EB54.3040406@xs4all.nl","subject":"Re: MinGW binary installer available","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-02-07T15:26:55Z","receivedAt":"2007-02-07T15:26:55Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Wed, 7 Feb 2007, Han-Wen Nienhuys wrote:\n\n> Johannes Schindelin escreveu:\n>\n> > Also, many scripts rely on bash and/or perl, so you'd have to include \n> > them, too.\n> \n> Indeed: for now, this is intended for people clueful enough to install \n> bash and perl on their own.  Adding bash itself should be easy, but I \n> have no idea how to make cmd open the scripts with bash automatically.\n\nWould be nice to include them, though. In this case, you can add a \nshortcut to bash, named \"Git shell\" ;-)\n\n> The thought of x-compiling perl makes me shudder. \n\nYou don't want to tell me that you x-compile Python when bundling \nLilyPond, do you?\n\nCiao,\nDscho\n"},{"id":"33814","messageId":"45C9F184.1060300@xs4all.nl","threadId":"6721","inReplyTo":"Pine.LNX.4.63.0702071625341.22628@wbgn013.biozentrum.uni-wuerzburg.de","subject":"Re: MinGW binary installer available","fromName":"Han-Wen Nienhuys","fromEmail":"hanwen@xs4all.nl","sentAt":"2007-02-07T15:34:28Z","receivedAt":"2007-02-07T15:34:28Z","isPatch":false,"sender":{"key":"hanwen@google.com","avatar":"https://avatars.githubusercontent.com/u/31547?v=4"},"body":"Johannes Schindelin escreveu:\n> \n> You don't want to tell me that you x-compile Python when bundling \n> LilyPond, do you?\n\nSee\n\n  http://lilypond.org/vc/gub.darcs/patches/python-2.5.patch\n  https://sourceforge.net/tracker/?func=detail&atid=305470&aid=1597850&group_id=5470\n\nI freely admit that it doesn't work very well, because the python build \nprocedure is rather naive when it comes to detecting installed modules.\n\n-- \n Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen\n"},{"id":"33816","messageId":"45C9F842.3080704@xs4all.nl","threadId":"6721","inReplyTo":"Pine.LNX.4.63.0702071552470.22628@wbgn013.biozentrum.uni-wuerzburg.de","subject":"Re: MinGW binary installer available","fromName":"Han-Wen Nienhuys","fromEmail":"hanwen@xs4all.nl","sentAt":"2007-02-07T16:03:14Z","receivedAt":"2007-02-07T16:03:14Z","isPatch":false,"sender":{"key":"hanwen@google.com","avatar":"https://avatars.githubusercontent.com/u/31547?v=4"},"body":"Johannes Schindelin escreveu:\n> I played a little with it. IMHO it makes no sense to use it without a \n> bash, and without less. For example,\n> \n> \t$ git init\n> \t$ git add git.exe\n> \t$ git status\n> \t$ git commit -a -m initial\n> \t$ git show HEAD\n> \n> do not produce any output when issued in cmd.\n\nStrange, those are builtins, not?  I recall that we also had\nsome issues with lilypond stdout printing things inside CMD,\ndepending on whether -mwindows is on the link line.\nDetails escape me, though. \n\nJan? \n\n-- \n Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen\n"},{"id":"33817","messageId":"Pine.LNX.4.63.0702071713190.22628@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"6721","inReplyTo":"45C9F184.1060300@xs4all.nl","subject":"Re: MinGW binary installer available","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-02-07T16:16:12Z","receivedAt":"2007-02-07T16:16:12Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Wed, 7 Feb 2007, Han-Wen Nienhuys wrote:\n\n> Johannes Schindelin escreveu:\n> > \n> > You don't want to tell me that you x-compile Python when bundling \n> > LilyPond, do you?\n> \n> See\n> \n>   http://lilypond.org/vc/gub.darcs/patches/python-2.5.patch\n>   https://sourceforge.net/tracker/?func=detail&atid=305470&aid=1597850&group_id=5470\n> \n> I freely admit that it doesn't work very well, because the python build \n> procedure is rather naive when it comes to detecting installed modules.\n\nSo you _do_ build it? Phew.\n\nA few months back, when we had that nasty Aussie on lily-devel whining \nabout not being able to compile LilyPond on Windows, I tried to build \n_all_ of the dependencies on MinGW, including Python. Needless to say, I \ngave up...\n\nBTW do you have side branches in that darcs gub repository? If not, I'll \ntry to leech it into a git repo with tailor (I do not want to install \ndarcs on all my machines, just to play with gub).\n\nCiao,\nDscho\n"},{"id":"33821","messageId":"45CA06E7.3050704@xs4all.nl","threadId":"6721","inReplyTo":"Pine.LNX.4.63.0702071713190.22628@wbgn013.biozentrum.uni-wuerzburg.de","subject":"Re: MinGW binary installer available","fromName":"Han-Wen Nienhuys","fromEmail":"hanwen@xs4all.nl","sentAt":"2007-02-07T17:05:43Z","receivedAt":"2007-02-07T17:05:43Z","isPatch":false,"sender":{"key":"hanwen@google.com","avatar":"https://avatars.githubusercontent.com/u/31547?v=4"},"body":"Johannes Schindelin escreveu:\n\n> BTW do you have side branches in that darcs gub repository? If not, I'll \n> try to leech it into a git repo with tailor (I do not want to install \n> darcs on all my machines, just to play with gub).\n\nNo, but I have a conversion running here.  I'll publish it once it's done.\n\n-- \n Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen\n"},{"id":"33822","messageId":"Pine.LNX.4.63.0702071808320.22628@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"6721","inReplyTo":"45CA06E7.3050704@xs4all.nl","subject":"Re: MinGW binary installer available","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-02-07T17:10:05Z","receivedAt":"2007-02-07T17:10:05Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Wed, 7 Feb 2007, Han-Wen Nienhuys wrote:\n\n> Johannes Schindelin escreveu:\n> \n> > BTW do you have side branches in that darcs gub repository? If not, I'll \n> > try to leech it into a git repo with tailor (I do not want to install \n> > darcs on all my machines, just to play with gub).\n> \n> No, but I have a conversion running here.  I'll publish it once it's done.\n\nThank you very much!\n\nJust out of curiosity: What do you use to convert it? Tailor all branches, \nthen stitch them together? (With tailor, stitching is possible as long as \nyou did not merge branches: the commit objects _will_ be identical, since \neven the commit timestamps are derived from the source repository.)\n\nCiao,\nDscho\n"},{"id":"33829","messageId":"45CA0DCA.3080908@xs4all.nl","threadId":"6721","inReplyTo":"Pine.LNX.4.63.0702071808320.22628@wbgn013.biozentrum.uni-wuerzburg.de","subject":"Re: MinGW binary installer available","fromName":"Han-Wen Nienhuys","fromEmail":"hanwen@xs4all.nl","sentAt":"2007-02-07T17:35:06Z","receivedAt":"2007-02-07T17:35:06Z","isPatch":false,"sender":{"key":"hanwen@google.com","avatar":"https://avatars.githubusercontent.com/u/31547?v=4"},"body":"Johannes Schindelin escreveu:\n\n> Thank you very much!\n> \n> Just out of curiosity: What do you use to convert it? Tailor all branches, \n> then stitch them together? (With tailor, stitching is possible as long as \n> you did not merge branches: the commit objects _will_ be identical, since \n> even the commit timestamps are derived from the source repository.)\n\nA simple linear import of all the patches. Since Darcs\nuses patch based storage, I think it's not possible to accurately map a Darcs\nrepository onto a Git one without creating branch spaghetti. \n\nI have never grokked how tailor is supposed to work, so I use a home made\nscript.\n\n-- \n Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen\n"},{"id":"33843","messageId":"87y7n990x9.fsf@peder.flower","threadId":"6721","inReplyTo":"45C9F842.3080704@xs4all.nl","subject":"Re: MinGW binary installer available","fromName":"Jan Nieuwenhuizen","fromEmail":"jan@avatar.nl","sentAt":"2007-02-07T20:18:26Z","receivedAt":"2007-02-07T20:18:26Z","isPatch":false,"sender":{"key":"jan@avatar.nl","avatar":null},"body":"Han-Wen Nienhuys <hanwen@xs4all.nl> writes:\n\n> Strange, those are builtins, not?  I recall that we also had\n> some issues with lilypond stdout printing things inside CMD,\n> depending on whether -mwindows is on the link line.\n> Details escape me, though. \n\n> Jan? \n\nI didn't either, but Google says\n\n   This is a windows limitation.  GUI apps (apps created with -mwindows)\n   can't send output to or receive input from the console.\n\nThat seems right, I remember that we chose to use -mwindows to get\nrid of the flashing black console silliness.\n\nGreetings,\nJan.\n\n-- \nJan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond - The music typesetter\nhttp://www.xs4all.nl/~jantien       | http://www.lilypond.org\n"},{"id":"33850","messageId":"45CA4035.4090803@xs4all.nl","threadId":"6721","inReplyTo":"45C9EB54.3040406@xs4all.nl","subject":"Re: MinGW binary installer available","fromName":"Han-Wen Nienhuys","fromEmail":"hanwen@xs4all.nl","sentAt":"2007-02-07T21:10:13Z","receivedAt":"2007-02-07T21:10:13Z","isPatch":false,"sender":{"key":"hanwen@google.com","avatar":"https://avatars.githubusercontent.com/u/31547?v=4"},"body":"Han-Wen Nienhuys escreveu:\n \n> Indeed: for now, this is intended for people clueful enough to install\n> bash and perl on their own.  Adding bash itself should be easy, but\n\nThat was spoken with hybris.  Bash uses a regular gnu autoconf build\nprocedure, so making it build is much less of a pain to than massaging eg.\nPython. However, it is a unix shell, and as such it does fork() all\nthe time. Hence, it is necessary to use Cygwin (or its derivative MSYS)\nfor running Bash.\n\nA good reason to get rid of bash scripts.\n\n-- \n Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen\n"},{"id":"33853","messageId":"45CA42C2.4090908@xs4all.nl","threadId":"6721","inReplyTo":"Pine.LNX.4.63.0702071552470.22628@wbgn013.biozentrum.uni-wuerzburg.de","subject":"Re: MinGW binary installer available","fromName":"Han-Wen Nienhuys","fromEmail":"hanwen@xs4all.nl","sentAt":"2007-02-07T21:21:06Z","receivedAt":"2007-02-07T21:21:06Z","isPatch":false,"sender":{"key":"hanwen@google.com","avatar":"https://avatars.githubusercontent.com/u/31547?v=4"},"body":"Johannes Schindelin escreveu:\n> I played a little with it. IMHO it makes no sense to use it without a \n> bash, and without less. For example,\n> \n> \t$ git init\n> \t$ git add git.exe\n> \t$ git status\n> \t$ git commit -a -m initial\n> \t$ git show HEAD\n> \n> do not produce any output when issued in cmd.\n\nCan you confirm to me that these do actually work? \n\n-- \n Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen\n"},{"id":"33860","messageId":"45CA4E68.6070308@xs4all.nl","threadId":"6721","inReplyTo":"Pine.LNX.4.63.0702071552470.22628@wbgn013.biozentrum.uni-wuerzburg.de","subject":"Re: MinGW binary installer available","fromName":"Han-Wen Nienhuys","fromEmail":"hanwen@xs4all.nl","sentAt":"2007-02-07T22:10:48Z","receivedAt":"2007-02-07T22:10:48Z","isPatch":false,"sender":{"key":"hanwen@google.com","avatar":"https://avatars.githubusercontent.com/u/31547?v=4"},"body":"Johannes Schindelin escreveu:\n> I played a little with it. IMHO it makes no sense to use it without a \n> bash, and without less. For example,\n> \n> \t$ git init\n> \t$ git add git.exe\n> \t$ git status\n> \t$ git commit -a -m initial\n> \t$ git show HEAD\n> \n> do not produce any output when issued in cmd.\n\ncan you check out the -2 build, at \n \n  http://lilypond.org/git/binaries/mingw/git-1.4.9993-2.mingw.exe\n  \nto see if this is better?\n\n-- \n Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen\n"},{"id":"33885","messageId":"Pine.LNX.4.63.0702080051010.22628@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"6721","inReplyTo":"45CA42C2.4090908@xs4all.nl","subject":"Re: MinGW binary installer available","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-02-07T23:51:34Z","receivedAt":"2007-02-07T23:51:34Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Wed, 7 Feb 2007, Han-Wen Nienhuys wrote:\n\n> Johannes Schindelin escreveu:\n> > I played a little with it. IMHO it makes no sense to use it without a \n> > bash, and without less. For example,\n> > \n> > \t$ git init\n> > \t$ git add git.exe\n> > \t$ git status\n> > \t$ git commit -a -m initial\n> > \t$ git show HEAD\n> > \n> > do not produce any output when issued in cmd.\n> \n> Can you confirm to me that these do actually work? \n\nApart from commit, which is a shell script, they appear to work. Only no \nuoutput :-)\n\nCiao,\nDscho\n"},{"id":"33886","messageId":"Pine.LNX.4.63.0702080051420.22628@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"6721","inReplyTo":"45CA4E68.6070308@xs4all.nl","subject":"Re: MinGW binary installer available","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-02-07T23:52:28Z","receivedAt":"2007-02-07T23:52:28Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Wed, 7 Feb 2007, Han-Wen Nienhuys wrote:\n\n> Johannes Schindelin escreveu:\n> > I played a little with it. IMHO it makes no sense to use it without a \n> > bash, and without less. For example,\n> > \n> > \t$ git init\n> > \t$ git add git.exe\n> > \t$ git status\n> > \t$ git commit -a -m initial\n> > \t$ git show HEAD\n> > \n> > do not produce any output when issued in cmd.\n> \n> can you check out the -2 build, at \n>  \n>   http://lilypond.org/git/binaries/mingw/git-1.4.9993-2.mingw.exe\n>   \n> to see if this is better?\n\nUnfortunately, today was the last day for me at a company where I have \naccess to Losedows. I'll try to get hold of another machine, and try \nthere, though.\n\nCiao,\nDscho\n"},{"id":"33923","messageId":"45CADAAA.74058D21@eudaptics.com","threadId":"6721","inReplyTo":"45C9EB54.3040406@xs4all.nl","subject":"Re: MinGW binary installer available","fromName":"Johannes Sixt","fromEmail":"j.sixt@eudaptics.com","sentAt":"2007-02-08T08:09:14Z","receivedAt":"2007-02-08T08:09:14Z","isPatch":false,"sender":{"key":"j6t@kdbg.org","avatar":"https://avatars.githubusercontent.com/u/14810926?v=4"},"body":"Han-Wen Nienhuys wrote:\n> Indeed: for now, this is intended for people clueful enough to install\n> bash and perl on their own.  Adding bash itself should be easy, but\n> I have no idea how to make cmd open the scripts with bash automatically.\n\nI've thought about renaming git-commit to git-commit.cmd and add this\npreamble:\n\n@echo off\nrem () { :; } ; : \\\nsh %0 %1 %2 %3 %4 %5 %6 %7 %8 %9\nrem ; : \\\nexit /B %ERRORLEVEL%\n\n\nin place of the usual \"#!/bin/sh\". It requires you to have a command\nnamed @echo.exe in the path that is a noop. Also, it is limited to 9\ncommand line arguments.\n\nWhat a hack! (*)\n\n-- Hannes\n\n(*) Here's how it works:\n- cmd.exe will ignore all but the sh and exit lines, effectively\ninvoking the script under bash and exiting with bash's exit code.\n- Bash will execute @echo, define a function named rem, ignore the sh\nand exit lines because they are continuations of the : noop on the\nprevious line. It will also run the second rem, but it is a noop, too.\n"},{"id":"33922","messageId":"45CADAC2.938303B2@eudaptics.com","threadId":"6721","inReplyTo":"Pine.LNX.4.63.0702071559340.22628@wbgn013.biozentrum.uni-wuerzburg.de","subject":"Re: MinGW binary installer available","fromName":"Johannes Sixt","fromEmail":"j.sixt@eudaptics.com","sentAt":"2007-02-08T08:09:38Z","receivedAt":"2007-02-08T08:09:38Z","isPatch":false,"sender":{"key":"j6t@kdbg.org","avatar":"https://avatars.githubusercontent.com/u/14810926?v=4"},"body":"Johannes Schindelin wrote:\n> Which makes me think if we should just disallow the \"git-<builtin>\" on\n> Windows, since sooner or later, Git will no longer be used from the\n> command line on Windows.\n\nBut all git scripts still use mostly git-foo instead of git foo :( They\nmust be changed, too!\n\n> And another thing hit me there: Are you sure that all works well if you\n> change the install path from \"C:\\Program Files\\Git\" to something else?\n> Without explicitely setting GIT_EXEC_PATH?\n\nI think it doesn't matter (mostly). The git wrapper sets the exec path\nand augments PATH, so that the scripts work. It uses the directory of\nargv[0] if --exec-path is not used. The only problematic cases are where\nnon-builtins (like git-send-pack) invoke other commands or hooks.\n\n-- Hannes\n"},{"id":"33924","messageId":"45CADB72.D84D1698@eudaptics.com","threadId":"6721","inReplyTo":"45CA4035.4090803@xs4all.nl","subject":"Re: MinGW binary installer available","fromName":"Johannes Sixt","fromEmail":"j.sixt@eudaptics.com","sentAt":"2007-02-08T08:12:34Z","receivedAt":"2007-02-08T08:12:34Z","isPatch":false,"sender":{"key":"j6t@kdbg.org","avatar":"https://avatars.githubusercontent.com/u/14810926?v=4"},"body":"Han-Wen Nienhuys wrote:\n> A good reason to get rid of bash scripts.\n\nNot that good a reasion, imho, as long as the scripts work!\n\nThen there are still the hooks that someone may want to run. Would you\nlike to recode them in some Windowsish language? Visual Basic maybe?\n*cough*\n\n-- Hannes\n"},{"id":"33933","messageId":"45CAF819.1060100@xs4all.nl","threadId":"6721","inReplyTo":"45CADAAA.74058D21@eudaptics.com","subject":"Re: MinGW binary installer available","fromName":"Han-Wen Nienhuys","fromEmail":"hanwen@xs4all.nl","sentAt":"2007-02-08T10:14:49Z","receivedAt":"2007-02-08T10:14:49Z","isPatch":false,"sender":{"key":"hanwen@google.com","avatar":"https://avatars.githubusercontent.com/u/31547?v=4"},"body":"Johannes Sixt escreveu:\n\n> \n> \n> in place of the usual \"#!/bin/sh\". It requires you to have a command\n> named @echo.exe in the path that is a noop. Also, it is limited to 9\n> command line arguments.\n\nnot mention that it will severly mess up if there are quoted arguments\nand/or spaces\n\n git commit -m \"this has a space\" -a\n\nIt might be possible to do \n\n  sh \"%0\" \"%1\" .. \n\nbut to make things interesting, different releases of windows have different\nrules for CMD shell quoting.\n\nExperience with LilyPond taught us to avoid the CMD shell at all costs. \n\n-- \n Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen\n"},{"id":"33964","messageId":"87abzoh15n.fsf@peder.flower","threadId":"6721","inReplyTo":"Pine.LNX.4.63.0702080051420.22628@wbgn013.biozentrum.uni-wuerzburg.de","subject":"Re: MinGW binary installer available","fromName":"Jan Nieuwenhuizen","fromEmail":"janneke@gnu.org","sentAt":"2007-02-08T19:58:28Z","receivedAt":"2007-02-08T19:58:28Z","isPatch":false,"sender":{"key":"janneke@gnu.org","avatar":null},"body":"Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:\n\n>  http://lilypond.org/git/binaries/mingw/git-1.4.9993-2.mingw.exe\n\nYes, much better.  There's still the bash script problem, maybe\nthese should be replaced with python?\n\n$ ./git-1.4.9993-2.mingw.exe /S\n20:48:11 root@Abbicci:~\n$ PATH=/cygdrive/c/Program\\ Files/Git/usr/bin/:$PATH\n20:48:46 root@Abbicci:~\n$ which git\n/cygdrive/c/Program Files/Git/usr/bin/git\n20:48:49 root@Abbicci:~\n$ mkdir -p vc/test.git\n20:49:03 root@Abbicci:~\n$ cd vc/test.git/\n20:49:05 root@Abbicci:~/vc/test.git\n$ git init \nInitialized empty Git repository in .git/\nwarning: templates not found /usr/share/git-core/templates/\n20:52:31 root@Abbicci:~/vc/test.git\n$ git status\ngit: 'status' is not a git-command\n\nThe most commonly used git commands are:\n    add            Add file contents to the changeset to be committed next\n    apply          Apply a patch on a git index file and a working tree\n    archive        Creates an archive of files from a named tree\n    bisect         Find the change that introduced a bug by binary search\n    branch         List, create, or delete branches\n    checkout       Checkout and switch to a branch\n    cherry-pick    Apply the change introduced by an existing commit\n    clone          Clones a repository into a new directory\n    commit         Record changes to the repository\n    diff           Show changes between commits, commit and working tree, etc\n    fetch          Download objects and refs from another repository\n    grep           Print lines matching a pattern\n    init           Create an empty git repository or reinitialize an existing one\n    log            Show commit logs\n    merge          Join two or more development histories together\n    mv             Move or rename a file, a directory, or a symlink\n    prune          Prunes all unreachable objects from the object database\n    pull           Fetch from and merge with another repository or a local branch\n    push           Update remote refs along with associated objects\n    rebase         Forward-port local commits to the updated upstream head\n    reset          Reset current HEAD to the specified state\n    revert         Revert an existing commit\n    rm             Remove files from the working tree and from the index\n    show           Show various types of objects\n    show-branch    Show branches and their commits\n    status         Show the working tree status\n    tag            Create, list, delete or verify a tag object signed with GPG\n(use 'git help -a' to get a list of all installed git commands)\n[1]20:52:36 root@Abbicci:~/vc/test.git\n$ git-status\n# On branch master\n#\n# Initial commit\n#\n# Changes to be committed:\n#   (use \"git rm --cached <file>...\" to unstage)\n#\n#       new file: boo\n#\n20:53:19 root@Abbicci:~/vc/test.git\n$ git-commit -a -m initial\n\n*** Your name cannot be determined from your system services (gecos).\n\nRun\n\n  git config user.email \"you@email.com\"\n  git config user.name \"Your Name\"\n\nTo set the identity in this repository.\nAdd --global to set your account's default\n\nfatal: empty ident  <> not allowed\n[128]20:53:25 root@Abbicci:~/vc/test.git\n$ git-config  user.email \"you@email.com\"\n20:54:06 root@Abbicci:~/vc/test.git\n$ git-config user.name \"Your Name\"\n20:54:13 root@Abbicci:~/vc/test.git\n$ git-commit -a -m initial\nCreated initial commit 7278148bc4ddc1c5d6cbb88a874b377f9813ec83\n 0 files changed, 0 insertions(+), 0 deletions(-)\n create mode 100644 boo\n20:54:24 root@Abbicci:~/vc/test.git\n$ git-show head\ncommit 7278148bc4ddc1c5d6cbb88a874b377f9813ec83\nAuthor: Your Name <you@email.com>\nDate:   Thu Feb 8 20:54:24 2007 +0100\n\n    initial\n\ndiff --git a/boo b/boo\nnew file mode 100644\nindex 0000000..e69de29\n20:54:28 root@Abbicci:~/vc/test.git\n\n-- \nJan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond - The music typesetter\nhttp://www.xs4all.nl/~jantien       | http://www.lilypond.org\n"},{"id":"33965","messageId":"Pine.LNX.4.63.0702082106430.22628@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"6721","inReplyTo":"87abzoh15n.fsf@peder.flower","subject":"Re: MinGW binary installer available","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-02-08T20:08:38Z","receivedAt":"2007-02-08T20:08:38Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Thu, 8 Feb 2007, Jan Nieuwenhuizen wrote:\n\n> Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:\n> \n> >  http://lilypond.org/git/binaries/mingw/git-1.4.9993-2.mingw.exe\n> \n> Yes, much better.  There's still the bash script problem, maybe\n> these should be replaced with python?\n\nHahahaha!\n\nThis is not meant as laughing _about_ you... Along with others, I worked \nvery hard to get rid of that naughty dependency to Python.\n\nIMHO the best way for Git is to go builtin. It is the only way to \nguarantee portability to many, many platforms without a dependency \nnightmare.\n\nWho knows, maybe Git will run on VMS yet?\n\nCiao,\nDscho\n"},{"id":"33974","messageId":"200702082215.50389.robin.rosenberg.lists@dewire.com","threadId":"6721","inReplyTo":"45CADAAA.74058D21@eudaptics.com","subject":"Re: MinGW binary installer available","fromName":"Robin Rosenberg","fromEmail":"robin.rosenberg.lists@dewire.com","sentAt":"2007-02-08T21:15:50Z","receivedAt":"2007-02-08T21:15:50Z","isPatch":false,"sender":{"key":"robin.rosenberg@dewire.com","avatar":"https://avatars.githubusercontent.com/u/46357?v=4"},"body":"torsdag 08 februari 2007 09:09 skrev Johannes Sixt:\n> \n> @echo off\n> rem () { :; } ; : \\\n> sh %0 %1 %2 %3 %4 %5 %6 %7 %8 %9\n> rem ; : \\\n> exit /B %ERRORLEVEL%\n> \n> \n> in place of the usual \"#!/bin/sh\". It requires you to have a command\n> named @echo.exe in the path that is a noop. Also, it is limited to 9\n> command line arguments.\n> \n> What a hack! (*)\n\nYes... I suggest you use %* to pass on all arguments. It works with more than 10\narguemtns, including quoted arguemnts (presumably whatever limit windows has)\n\n-- robin\n"},{"id":"33975","messageId":"Pine.LNX.4.63.0702082216000.22628@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"6721","inReplyTo":"200702082215.50389.robin.rosenberg.lists@dewire.com","subject":"Re: MinGW binary installer available","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-02-08T21:18:41Z","receivedAt":"2007-02-08T21:18:41Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Thu, 8 Feb 2007, Robin Rosenberg wrote:\n\n> torsdag 08 februari 2007 09:09 skrev Johannes Sixt:\n> > \n> > @echo off\n> > rem () { :; } ; : \\\n> > sh %0 %1 %2 %3 %4 %5 %6 %7 %8 %9\n> > rem ; : \\\n> > exit /B %ERRORLEVEL%\n> > \n> > \n> > in place of the usual \"#!/bin/sh\". It requires you to have a command\n> > named @echo.exe in the path that is a noop. Also, it is limited to 9\n> > command line arguments.\n> > \n> > What a hack! (*)\n> \n> Yes... I suggest you use %* to pass on all arguments. It works with more \n> than 10 arguemtns, including quoted arguemnts (presumably whatever limit \n> windows has)\n\n... but probably breaks down on Windows 98, and maybe on ME, too, and just \nmaybe on XP pre-SP1 with full moon, unless you end the life of a black \ngoat before trying that.\n\nFrankly, I'd rather stay away from such hackeries. For now, we can ship \nbash, perl and Tcl/Tk with Git, as well as git-gui, can't we? After all, \nWindows users are used to bloatware. Then, we just hide the command line \nfrom them!\n\nCiao,\nDscho\n"},{"id":"33976","messageId":"20070208212259.GA1091@spearce.org","threadId":"6721","inReplyTo":"Pine.LNX.4.63.0702082216000.22628@wbgn013.biozentrum.uni-wuerzburg.de","subject":"Re: MinGW binary installer available","fromName":"Shawn O. Pearce","fromEmail":"spearce@spearce.org","sentAt":"2007-02-08T21:22:59Z","receivedAt":"2007-02-08T21:22:59Z","isPatch":false,"sender":{"key":"spearce@spearce.org","avatar":"https://avatars.githubusercontent.com/u/34844?v=4"},"body":"Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote:\n> Frankly, I'd rather stay away from such hackeries. For now, we can ship \n> bash, perl and Tcl/Tk with Git, as well as git-gui, can't we? After all, \n> Windows users are used to bloatware. Then, we just hide the command line \n> from them!\n\nI agree.\n\nI'm happy to make changes in git-gui to help users who are trying\nto use Git without Cygwin, and are on Windows.  Patches would be\neven more welcome of course.  ;-)\n\nMost of git-gui tries to stay away from shell scripts, partly for\nthis reason, and partly because its Porcelain and shouldn't depend\non the stock Porcelain-ish that comes with Git.  Oh, and shell\nscripts on Cygwin aren't speed-demons.  :-)\n\n-- \nShawn.\n"},{"id":"33978","messageId":"Pine.LNX.4.63.0702082224380.22628@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"6721","inReplyTo":"20070208212259.GA1091@spearce.org","subject":"Re: MinGW binary installer available","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-02-08T21:26:05Z","receivedAt":"2007-02-08T21:26:05Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Thu, 8 Feb 2007, Shawn O. Pearce wrote:\n\n> Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote:\n> > Frankly, I'd rather stay away from such hackeries. For now, we can ship \n> > bash, perl and Tcl/Tk with Git, as well as git-gui, can't we? After all, \n> > Windows users are used to bloatware. Then, we just hide the command line \n> > from them!\n> \n> I agree.\n> \n> I'm happy to make changes in git-gui to help users who are trying\n> to use Git without Cygwin, and are on Windows.  Patches would be\n> even more welcome of course.  ;-)\n> \n> Most of git-gui tries to stay away from shell scripts, partly for\n> this reason, and partly because its Porcelain and shouldn't depend\n> on the stock Porcelain-ish that comes with Git.  Oh, and shell\n> scripts on Cygwin aren't speed-demons.  :-)\n\nI was talking about MinGW. Shipping MSYS' bash, perl and tcltk would not \nbe impossible. And configuring git-gui to be started with MSYS' wish would \nsolve the common problems calling bash scripts.\n\nCiao,\nDscho\n"}]}