2017-07-14 92 views
0

我剛開始使用git,所以這可能聽起來像一個愚蠢的問題,對此感到遺憾。Git commit然後結賬

我正在開發python和在Windows 7上使用Pycharm。我正在使用pycharm接口來執行git命令。

在一些分支上工作後,我提交了更改(但沒有推送它們)。之後,我查出了主人,然後再次檢查了同一個分支。但是這與我犯下的時候並不相同。我可以回到我承諾的版本嗎?

再一次,請記住,我是一名初學者時,迴應。

+0

你在描述什麼不對。你能指定你在整個上述過程中使用的命令嗎? –

+1

你如何知道在檢查主人之前分支是不同的?有什麼不同,你期望看到什麼? –

+0

我正在使用pycharm社區加入2016.1.3。在右側屏幕的底部有一個界面,可以讓您檢出分支。我查出了主人,然後是我之前做過承諾的那個分支。現在我有一些丟失的文件。 – user25640

回答

0

這是不可能的。有一些情況可能會導致您無法在結帳後找到提交,例如您正在使用分離的HEAD,或者您正在另一個分支上工作。

要弄清楚,你可以使用命令git reflog從上往下找最新消息:

checkout: moving from *** to master at [email protected]{n} 
  • 如果顯示該分支名稱,如***

    5cc0787 [email protected]{1}: checkout: moving from dev to master

    這意味着在結賬到master分行之前,您在dev分行承諾更改。

  • 如果***顯示提交ID(SHA-1的值),如:

    5cc0787 [email protected]{1}: checkout: moving from b503fa537bac459862752641facbd5b50783d7b5 to master

    這意味着你是在一個分離的頭雕像作品。如果提交的更改仍然要用於分支(例如stage),則可以從分離的HEAD(git checkout -b temp b503f)創建新分支(temp),然後將新創建的分支temp合併到stagegit checkout stagegit merge temp )。