2013-04-26 36 views
5

我已將Source Control (git)添加到我的項目中。我還在Team Foundation Service with git創建了一個項目。項目Team Foundation Service連接到我的Visual Studio。我有Enabled alternate credentials。參考文獻Ref1Ref 2團隊基金會服務git push時致命

當我跑;

git remote add origin https://yourname.visualstudio.com/DefaultCollection/_git/ProjectName 

然後:

git push origin master 

我得到這個:

用戶名 'https://yourname.visualstudio.com':`

後我輸入用戶名:

Password for 'https://[email protected]@yourname.visualstudio.com': 

後我輸入密碼:

致命:https://yourname.visualstudio.com/DefaultCollection/ProjectName/info/refs 沒有找到:你在服務器上運行的git更新服務器的信息?

我似乎無法找到解決方案,我怎麼能使這個成功?

回答

5

您可以嘗試克隆TFS Git倉庫,並在其中添加源代碼,而不是試圖在本地創建倉庫,並嘗試添加遠程倉庫。

git clone會設置(希望)正確的遠程,並應該讓你推回你會添加和提交的任何代碼。


Johan Leino指出in the comments爲 「SourceTree + TFS Service + HTTPS: Login failed

我建立一個免費的TFS帳號來測試這一點,可以重現該問題。
我也可以使用標準安裝的Git從http://git-scm.com複製它 - 看起來開箱即用,TFS不能用於標準Git。

但是,您可以通過在TFS中允許「替代身份驗證憑證」使其工作。

  1. 點擊在右上角您的用戶名,並選擇「我的模式」
  2. 選擇「證書」選項卡
  3. 點擊「啓用備用憑據」
  4. 點擊「設置」旁邊的輔用戶名並選擇一個用戶名未「@」字符
  5. 設置密碼

4,5似乎是可選的,但我就是這麼做的。
一旦我這樣做了,我可以使用我的完整電子郵件作爲用戶名或我創建的替代用戶名從TFS克隆。

似乎默認的TFS身份驗證是某種僅適用於VS工具的自定義系統,只是啓用這種替代身份驗證可以與其他系統一起工作(爲什麼這不是默認設置,Microsoft?)

+0

該解決方案是可能的,我確實考慮過它,但應該是最不重要的選擇,特別是如果您正在研究「多種解決方案或分區解決方案」。在引用或引用其他源的情況下移動源代碼可能會引發更多路障。 – Komengem 2013-04-26 23:17:47

+0

@KomengeMwandila據我所知,這是比實際解決方案更多的解決方法。 – VonC 2013-04-26 23:19:13

+0

是的,我現在不得不使用它,所以我可以繼續我想要做的事情。我給了你+1,但我會堅持幾天將其標記爲答案,看看有沒有人可以弄清楚。 – Komengem 2013-04-26 23:24:06