Git GUI hangs randomly when changing stage

605 views
Skip to first unread message

Arkadiusz Piekarz

unread,
Nov 2, 2010, 8:01:40 AM11/2/10
to msysGit
When I use Git GUI to add or remove files from the staging area (by
clicking on the icon next to file name), the application often freezes
and never wakes up. After I close it, I can see Git.exe is still
working in the process manager. But then when I launch Git GUI again,
I can see that the change I wanted to do that caused the freeze has
been done (for instance, I click the icon to add file to the index,
Git GUI freezes, I close it and run again, I see the file is now in
the index).

I already tried uninstalling Msysgit and wiping out its config files,
it didn't work. I configured Msysgit to work with windows command (so
only Git is added to the PATH) and use autocrlf=input, if it has any
importance.

I had this issue since Msysgit 1.7.0.2 on Windows 7 32-bit. I thought
it would be fixed in the new 1.7.3.1, but I was wrong. However, I
don't experience this problem on my other computer with Windows 7 64-
bit.

(I also noticed Qt Creator doesn't see Git (it says 'git' is not a
recognized command), but I don't know if this bug is related at all.)

Thanks in advance for any help.

Arkadiusz Piekarz

unread,
Nov 2, 2010, 9:41:49 AM11/2/10
to msysGit
I also remember Git GUI once froze when I clicked "Commit" button, so
this problem occurs not only with staging files.

Joshua Jensen

unread,
Nov 2, 2010, 10:52:52 AM11/2/10
to Arkadiusz Piekarz, msysGit
----- Original Message -----
From: Arkadiusz Piekarz
Date: 11/2/2010 7:41 AM
> On 2 Lis, 13:01, Arkadiusz Piekarz<piekarzarkadi...@gmail.com> wrote:
>> When I use Git GUI to add or remove files from the staging area (by
>> clicking on the icon next to file name), the application often freezes
>> and never wakes up. After I close it, I can see Git.exe is still
>> working in the process manager. But then when I launch Git GUI again,
>> I can see that the change I wanted to do that caused the freeze has
>> been done (for instance, I click the icon to add file to the index,
>> Git GUI freezes, I close it and run again, I see the file is now in
>> the index).
This happens often to me, too, but I've not had time to investigate.

Josh

Pat Thoyts

unread,
Nov 2, 2010, 5:04:50 PM11/2/10
to Arkadiusz Piekarz, msysGit
On 2 November 2010 12:01, Arkadiusz Piekarz <piekarza...@gmail.com> wrote:
> When I use Git GUI to add or remove files from the staging area (by
> clicking on the icon next to file name), the application often freezes
> and never wakes up. After I close it, I can see Git.exe is still
> working in the process manager. But then when I launch Git GUI again,
> I can see that the change I wanted to do that caused the freeze has
> been done (for instance, I click the icon to add file to the index,
> Git GUI freezes, I close it and run again, I see the file is now in
> the index).
>
> I already tried uninstalling Msysgit and wiping out its config files,
> it didn't work. I configured Msysgit to work with windows command (so
> only Git is added to the PATH) and use autocrlf=input, if it has any
> importance.
>
> I had this issue since Msysgit 1.7.0.2 on Windows 7 32-bit. I thought
> it would be fixed in the new 1.7.3.1, but I was wrong. However, I
> don't experience this problem on my other computer with Windows 7 64-
> bit.

It's unlikely to be addressed in the absence of bug reports detailing
the problem.
I've not encountered this problem. It sounds like a failure of tcl to
detect the closing of
the pipe that communicates with git. However, as this is only appearing on your
system (and only one of those) I suspect something on your system is
interfering.
Have you got cygwin installed? If so, try adjusting the path to
exclude any cygwin
directories and see if that makes a difference.
After that, try using the current master branch of
git://repo.or.cz/git-gui.git and use
git-gui --trace. This will print out on the tcl console information
about each git command
that is called and you can then see what the last call before the hang was.


>
> (I also noticed Qt Creator doesn't see Git (it says 'git' is not a
> recognized command), but I don't know if this bug is related at all.)

Likely a PATH issue. Or possibly Qt creator only looks for git.exe.
You might make a
wrapper script to include the git/bin path before launching Qt creator.

Arkadiusz Piekarz

unread,
Nov 2, 2010, 6:12:16 PM11/2/10
to Pat Thoyts, jje...@workspacewhiz.com, msy...@googlegroups.com

On 2 Lis, 22:04, Pat Thoyts <pattho...@gmail.com> wrote:

> It's unlikely to be addressed in the absence of bug reports detailing
> the problem.

I thought it was only some bug in my system configuration, but now
that the new version is out I decided to write to you.
Joshua Jensen has seen this issue too, so I'm glad I'm not alone with
my problem ;-)

> I've not encountered this problem. It sounds like a failure of tcl to
> detect the closing of

> the pipe that communicates with git. (...)

I don't have Cygwin, never had it. I'll try what you suggested and
write back, thanks!

> Likely a PATH issue. Or possibly Qt creator only looks for git.exe.
> You might make a
> wrapper script to include the git/bin path before launching Qt creator.

I forgot to say Qt Creator can see Git on my other computer. I checked
PATH and the part with Git is the same on both systems.

Arkadiusz Piekarz

unread,
Nov 3, 2010, 5:06:44 PM11/3/10
to msysGit, Pat Thoyts, jje...@workspacewhiz.com
I downloaded msysgit netinstall, then run "git gui --trace" on my repo
and... I can't force it to freeze. I double checked with the stable
1.7.3.1 version and it does freeze easily. Also, the git gui --trace
command doesn't print any output to the console. Any suggestions?

Pat Thoyts

unread,
Nov 3, 2010, 5:45:04 PM11/3/10
to Arkadiusz Piekarz, msysGit, jje...@workspacewhiz.com

On Windows GUI processes don't have standard output channels. So Tk
hooks one up and connects it to a graphical console that can be shown
by calling the console show command in tcl. So if you add a line with
'console show' quite early on in git-gui.tcl then you get a window
that displays the trace output and permits you to inspect and modify
the running process. In the git-gui development repository one of the
recent patches will automate this (--trace on win32 will provoke a
'console show' for you.)

Arkadiusz Piekarz

unread,
Nov 3, 2010, 8:10:21 PM11/3/10
to Pat Thoyts, msysGit, jje...@workspacewhiz.com

On 3 Lis, 22:45, Pat Thoyts <pattho...@gmail.com> wrote:
> On Windows GUI processes don't have standard output channels. So Tk
> hooks one up and connects it to a graphical console that can be shown
> by calling the console show command in tcl. So if you add a line with
> 'console show' quite early on in git-gui.tcl then you get a window
> that displays the trace output and permits you to inspect and modify
> the running process. In the git-gui development repository one of the
> recent patches will automate this (--trace on win32 will provoke a
> 'console show' for you.)

Ok, I added the command in the 134th line of the file and it worked.
However, the console freezes at the same time as Git GUI freezes, so
the only way to save its contents is to make a screenshot (or maybe
there's a better way). Here are two screens I captured so far:

http://img688.imageshack.us/img688/8093/msysgitfreeze1.png
http://img80.imageshack.us/img80/370/msysgitfreeze2.png

Arkadiusz Piekarz

unread,
Nov 4, 2010, 7:04:51 AM11/4/10
to msysGit, Pat Thoyts, jje...@workspacewhiz.com
I forgot to say the previous screenshots are from the stable 1.7.3.1
version.

Arkadiusz Piekarz

unread,
Dec 9, 2010, 11:54:40 AM12/9/10
to msysGit, jje...@workspacewhiz.com, patt...@gmail.com
On 4 Lis, 12:04, Arkadiusz Piekarz <piekarzarkadi...@gmail.com> wrote:
> I forgot to say the previous screenshots are from the stable 1.7.3.1
> version.

Was there any progress in solving this bug? Right now, I literally
cannot use Git GUI on my notebook for 10 seconds without hanging the
program. Were the screenshots I pasted provided earlier helpful?
Should I add more of them? Can I help in other way in solving this?

Thanks in advance for a reply.
Reply all
Reply to author
Forward
0 new messages