• Severity 1 - Critical

      As requested in answer to my stackoverflow (http://stackoverflow.com/questions/24637748/cant-push-subtree-using-sourcetree) post I'm posting this potential bug here.

      Using a basic schema for git subtree I created 2 repository on Github: "project" and "framework" and made the followings:

      • Clone "project" repository
      • Add Subtree "framework" in a folder named "framework_dir"
      • Navigate through "project/framework_dir" and create test.txt
      • In the "project" working copy add test.txt to and commit it.

      Pushing "project" gives the right result on the project repo. I then try to push this change to "framework" but it loops endlessly without giving any errors.

      Same manipulation seems to work on the mac app on Mac OSX

      Thanks.

            [SRCTREEWIN-1819] Can't push subtree

            Hi,

            Please let us know if this is still happening on latest version 3.4.5.

            Thanks

            Vipin Yadav added a comment - Hi, Please let us know if this is still happening on latest version 3.4.5. Thanks

            ophilbert , teo_shaowei We are analyzing this issue, however couldn't reproduce in the latest version. Is the main repo and the sub repo having different authentication?

            Anphy Jose (Inactive) added a comment - ophilbert  , teo_shaowei We are analyzing this issue, however couldn't reproduce in the latest version. Is the main repo and the sub repo having different authentication?

            Alex Alex added a comment -

            Highly voting fot this feature. I put up with it for six months already and I don't want to wait more.

            Alex Alex added a comment - Highly voting fot this feature. I put up with it for six months already and I don't want to wait more.

            Ev Haus added a comment -

            This is now an issue for me after upgrading from 2.1 to 2.2.2. I didn't have the issue in 2.1

            Ev Haus added a comment - This is now an issue for me after upgrading from 2.1 to 2.2.2. I didn't have the issue in 2.1

            When will this be fixed?!!! This issue has a level of "Critical", does that not mean anything at all?!!!

            Andrew McAllister added a comment - When will this be fixed?!!! This issue has a level of "Critical", does that not mean anything at all?!!!

            I third it is an authentication issue.

            We are having the same issue with this, it appears that it is a password issue when you use HTTPS, we have switched to SSH and it works OK. The problem isn't limited to just PUSH it also doesn't work for PULL either. Can we have an update on this??

            Andrew McAllister added a comment - I third it is an authentication issue. We are having the same issue with this, it appears that it is a password issue when you use HTTPS, we have switched to SSH and it works OK. The problem isn't limited to just PUSH it also doesn't work for PULL either. Can we have an update on this??

            I had to switch to SSH as well in order to push subtree commits on windows. It would be nice if it worked on https

            Robert Stehwien added a comment - I had to switch to SSH as well in order to push subtree commits on windows. It would be nice if it worked on https

            Yes I would second that it is an authentication issue.

            I realized that my main repo connects to BitBucket via SSH, but sub repo connects to BitBucket via HTTP. That results in an infinite loop too (despite effectively on the same account).

            I changed my sub repo to connect via SSH, and the connection goes through.

            Teo_ShaoWei added a comment - Yes I would second that it is an authentication issue. I realized that my main repo connects to BitBucket via SSH, but sub repo connects to BitBucket via HTTP. That results in an infinite loop too (despite effectively on the same account). I changed my sub repo to connect via SSH, and the connection goes through.

            Hi, I am also facing the same issue. Just to float the issue up yupz.

            Teo_ShaoWei added a comment - Hi, I am also facing the same issue. Just to float the issue up yupz.

            Also having this issue, is there any extra information we can supply to help solve this?

            Jani Similä added a comment - Also having this issue, is there any extra information we can supply to help solve this?

            Still having this issue as on 2/20/15, is this going to be fixed? On windows, no user auth dialog and I don't want to put my password in as plain text.

            Chris Phillips added a comment - Still having this issue as on 2/20/15, is this going to be fixed? On windows, no user auth dialog and I don't want to put my password in as plain text.

            Same issue here - works fine on my Mac, but on Windows the "dialog" is missing for authentication.

            realprometheus added a comment - Same issue here - works fine on my Mac, but on Windows the "dialog" is missing for authentication.

            I'm having this issue on Windows. adding ":pwd" to the url does fix it but I really don't like having my password in that URL. Any update on a fix?

            Stewart Scott added a comment - I'm having this issue on Windows. adding ":pwd" to the url does fix it but I really don't like having my password in that URL. Any update on a fix?

            Hey all,
            I'm working with Stash and SourceTree and i can confirm that is a problem with the authentication of the subtree.
            When you add a subtree the url is in this format: http://user@192.168.9.200:7990/scm/valen/testsub.git.
            In this way it doesn't work.
            you have to change the url for this one : http://user:pwd@192.168.9.200:7990/scm/valen/testsub.git and then all works fine.

            It's possible that it will be solve un futher versions of SourceTree?

            Thanks
            Albert Arnau

            albertarnau (Inactive) added a comment - Hey all, I'm working with Stash and SourceTree and i can confirm that is a problem with the authentication of the subtree. When you add a subtree the url is in this format: http://user@192.168.9.200:7990/scm/valen/testsub.git . In this way it doesn't work. you have to change the url for this one : http://user:pwd@192.168.9.200:7990/scm/valen/testsub.git and then all works fine. It's possible that it will be solve un futher versions of SourceTree? Thanks Albert Arnau

            KieranA added a comment - - edited

            Hey Titus,

            > I can confirm that for us it seems to be the authentication problem mentioned above

            Interesting you mention this - what's the URL format for the subtree in SourceTree itself? Does it have a username in it?

            EDIT: Also, regardless of your URL format, I can fix this by being explicit with the subtree as a call direct from the root of the repo instead, which will fix auth issues for anyone.

            Cheers

            KieranA added a comment - - edited Hey Titus, > I can confirm that for us it seems to be the authentication problem mentioned above Interesting you mention this - what's the URL format for the subtree in SourceTree itself? Does it have a username in it? EDIT: Also, regardless of your URL format, I can fix this by being explicit with the subtree as a call direct from the root of the repo instead, which will fix auth issues for anyone. Cheers

            Titus Nachbauer added a comment - - edited

            @Kieran: I can confirm that for us it seems to be the authentication problem mentioned above. We created a workaround by externalising the commands into a batchfile and using a custom action to run the batch file and pass it the parameters to pull/push the subtree, as specified below. It is not pretty, since it contains the password in plain text. Please note that we were logged into BitBucket as admin, but still the authentication failed, although we were the owner of all repositories involved.

            pull subtree.bat:
            git -c diff.mnemonicprefix=false -c core.quotepath=false subtree pull -P %1 https://%4:%5@bitbucket.org/%4/%2.git %3

            %1 = name of local folder
            %2 = name of remote repository
            %3 = name of remote branch
            %4 = user name
            %5 = password

            Usage as custom action:

            Menu Caption: pull library subtree
            Script to Run: <path_to_batch_file>/subtree.bat
            Parameters: <local_folder> <repository> <branch_name> <user> <password>

            Hope this helps anyone.

            Titus Nachbauer added a comment - - edited @Kieran: I can confirm that for us it seems to be the authentication problem mentioned above. We created a workaround by externalising the commands into a batchfile and using a custom action to run the batch file and pass it the parameters to pull/push the subtree, as specified below. It is not pretty, since it contains the password in plain text. Please note that we were logged into BitBucket as admin, but still the authentication failed, although we were the owner of all repositories involved. pull subtree.bat: git -c diff.mnemonicprefix=false -c core.quotepath=false subtree pull -P %1 https://%4:%5@bitbucket.org/%4/%2.git %3 %1 = name of local folder %2 = name of remote repository %3 = name of remote branch %4 = user name %5 = password Usage as custom action: Menu Caption: pull library subtree Script to Run: <path_to_batch_file>/subtree.bat Parameters: <local_folder> <repository> <branch_name> <user> <password> Hope this helps anyone.

            Great thank you for this update. Any ideas of a possible release date for 1.6 ?
            I don't mind command line for now on but some of my friends barely appreciate.

            Cheers and keep up your good work

            Olivier Ohbibi added a comment - Great thank you for this update. Any ideas of a possible release date for 1.6 ? I don't mind command line for now on but some of my friends barely appreciate. Cheers and keep up your good work

            KieranA added a comment -

            Ah, this might be the age old issue where mixed host auth fails with either subtrees or submodules. I think we have this reported elsewhere, but basically there is no prompt for auth when working with subtrees on a different host, so the auth just fails silently and nothing happens.

            I still have to look into this one and would like to see a resolution as it won't be uncommon that people do this.

            Cheers

            KieranA added a comment - Ah, this might be the age old issue where mixed host auth fails with either subtrees or submodules. I think we have this reported elsewhere, but basically there is no prompt for auth when working with subtrees on a different host, so the auth just fails silently and nothing happens. I still have to look into this one and would like to see a resolution as it won't be uncommon that people do this. Cheers

            I was connected with my Github account on Sourcetree when this happened. Maybe it should try pushing using the provided credentials.
            Any workaround for the moment ?

            Thanks

            Olivier Ohbibi added a comment - I was connected with my Github account on Sourcetree when this happened. Maybe it should try pushing using the provided credentials. Any workaround for the moment ? Thanks

            Chuck Keller added a comment - - edited

            I noticed that this can happen if the repository requires user authentication. The subtree push is simply waiting for the user/pass to complete the push action at this point, but Sourcetree doesn't indicate anything so it appears hung to the user. To prevent this, Sourcetree should add the user authentication for subtree push/pulls in the dialog upfront.

            We use Stash to host our repositories, and to get around this, I had to create a "public" user/password in Stash which had access to our subtree repository and let the developers include that in their http link in the subtree dialog.

            Chuck Keller added a comment - - edited I noticed that this can happen if the repository requires user authentication. The subtree push is simply waiting for the user/pass to complete the push action at this point, but Sourcetree doesn't indicate anything so it appears hung to the user. To prevent this, Sourcetree should add the user authentication for subtree push/pulls in the dialog upfront. We use Stash to host our repositories, and to get around this, I had to create a "public" user/password in Stash which had access to our subtree repository and let the developers include that in their http link in the subtree dialog.

              Unassigned Unassigned
              267f2052c6b4 Olivier Ohbibi
              Affected customers:
              25 This affects my team
              Watchers:
              26 Start watching this issue

                Created:
                Updated:
                Resolved: