記錄一次使用sourcetree(git的一個gui工具)的時候,發生的github不停彈出登錄窗口的問題
先是我在使用sourcetree的時候,push,結果彈出一個窗口,上面寫着github,讓我登錄。我sourcetree用了半年了,今天第一次見。
結果不論如何填寫用戶名和密碼,他永遠說我logon failed。
我就直接打開git bash來進行push,結果他居然又彈出來了。我直接關掉,然后git bash命令行提示讓我輸入用戶名密碼(這才對嘛!)然后push成功了。這說明:1.彈窗這玩意兒不是sourcetree的 2,這個窗口還挺fancy的,明顯不是git bash這種命令行界面,這是個插件。3.這東西屁用沒有(明明命令行直接輸入用戶密碼就完事兒了),可能他設計出來是為了更安全、更方便,但是他有bug啊
然后我google了一會,發現原來有個git credentials manager這個軟件,這是安裝git的時候勾選安裝的,這個彈窗就是這個軟件彈出來的。
這期間我還搜到過關於“.gitconfig 文件中添加 [credential] helper = store 或者在git bash 中執行 git config --global credential.helper store”這樣的解決方案,不管用。
我一氣之下執行了“git credential-manager uninstall”,直接把這玩意兒刪了,我看你還怎么彈。
然后世界清靜了,無論是git bash還是sourcetree,直接push就行,不需要輸入用戶密碼了。
但我其實還是沒完全整明白背后的原理,所以只能用這種敘述的方式記錄下來。。。