4

I am using Smartgit 2.0.2. When I try to push small file (for example 1kb .txt file) it works. However with 2mb and 6mb files it fails. Here's output:

Commit: sha1 file '<stdout>' write error: Invalid argument The remote end hung up unexpectedly pack-objects died with strange error failed to push some refs to '<link hidden>'
[master 94d1218] test
1 files changed, 0 insertions(+), 0 deletions(-)
create mode 100644 Client/Leavers.pdf
sha1 file '<stdout>' write error: Invalid argument
The remote end hung up unexpectedly
pack-objects died with strange error
failed to push some refs to '<link hidden>'

On other side of the world, with different computer, connection, but same configuration everything works correctly. Anyone have idea how to fix it, or what it is at least? Thank you in advance.

Mot
  • 28,248
  • 23
  • 84
  • 121
Ripiz
  • 41
  • 1
  • 2
  • 4
    Smells like an unreliable network. – Rudi Feb 05 '11 at 09:24
  • 3
    try the official git instead of Smartgit – Mauricio Scheffer Feb 05 '11 at 17:49
  • @Mauricio: Perhaps; I've never used SmartGit, but their website says: "SmartGit only requires a Java Runtime Environment and a Git installation on your system." That ought to mean that under the hood it's just calling git push. A better tack might be to upgrade the Git installation? – Cascabel Feb 06 '11 at 03:38
  • @Jefromi: AFAIK SmartGit uses JGit – Mauricio Scheffer Feb 06 '11 at 04:06
  • @Mauricio: Ah, [it would seem so](http://stackoverflow.com/questions/4624084/compatibility-of-egit-or-are-there-alternatives). That certainly explains the bad behavior. (And I wonder why their website says it needs a Git installation! Maybe because they use the real thing for things that JGit can't do yet?) – Cascabel Feb 06 '11 at 05:04
  • 1
    SmartGit uses jgit only for read-only commands. Hence, the error you encounter occurs in Git itself. You may check log.txt in SmartGit's settings directory to see which Git commands have been executed, then try to perform these commands directly from a terminal window. – mstrap Feb 11 '11 at 08:25
  • What exact Git version you are using? – Mot Feb 14 '11 at 09:15

2 Answers2

1

Smartgit uses a standard git command line under the UI wrappers. The problem is a network issue. Try setting up an SSH key to communicate with the remote server. If you can, set the remote server (or have their system admin do it) so that it sets the KeepAlive for your SSH setting. This is done via the sshd_config on their end. You may also need to tweak your ssh_config (the client side) on your end. Some servers don't play well with unstable network providers so even a small network hiccup can drop the connection, which is much more likely during a longer download. DSL and overused cable subnets are prime suspects.

IF you need more information on SSH keepalives, check out our blog articles at http://www.cybersprocket.com/tag/ssh/

Lance Cleveland
  • 3,098
  • 1
  • 33
  • 36
0

Had the same problem pushing big files with git. On the server, auth.log contained Corrupted MAC on input which seems to be a long standing known kernel bug. After applying the fix found on that page ethtool -K eth0 rx off tx off the problem was resolved.

stijn
  • 34,664
  • 13
  • 111
  • 163