git push --atomic hangs on failure over SSH

XMLWordPrintable

    • Type: Bug
    • Resolution: Unresolved
    • Priority: Medium
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • 2
    • Severity 3 - Minor
    • 7

      Summary

      When using git push --atomic, if the push is a failure case (e.g. local is behind origin) and the operation is over SSH, then the command hangs instead of returning control to the terminal

      Steps to Reproduce

      1. Create a new repository on Bitbucket, then clone and cd into the repo
      2. Run the following commands to create some test commits and then make an atomic push that should fail:
        echo test >> test && git add . && git commit -m "test"
        echo test >> test && git add . && git commit -m "test"
        
        git push origin master
        
        git push --atomic origin HEAD~1:refs/heads/master
        

      Expected Results

      Upon failure, the session should close and control should be returned to the client

      Actual Results

      On Bitbucket Server, the command hangs indefinitely and requires a user interruption to exit:

      ➜  atomictest git:(master) git push --atomic origin HEAD~1:refs/heads/master
      error: atomic push failed for ref refs/heads/master. status: 2
      
      ^CKilled by signal 2.
      

            Assignee:
            Unassigned
            Reporter:
            Dave Chevell
            Votes:
            5 Vote for this issue
            Watchers:
            11 Start watching this issue

              Created:
              Updated: