2016-10-04 70 views
0

我試圖從master分支籤老版本的我的代碼和我做如下:如何從兩週前或某個特定日期結賬-b?

git checkout -b master_de1974 `git rev-list -n 1 --before="5 days ago" master` 

那是正確的命令?我怎麼能確定,如果我得到舊的代碼,而不是新的代碼?

+0

您應該從提交結帳以確保您的代碼具有完全的快照。你可以通過輸入'git log -n3'來查看你在樹上的位置,它會顯示當前位置的最後三個提交。所以你應該在預期的日期或之前看到提交,如果你的命令工作 – olibiaz

+0

@olibiaz,然後提交提交ID什麼是正確的命令運行? – ReynierPM

+1

使用'git log',您可以獲得提交的SHA1。然後只是'git checkout -b '。有關詳細信息,請參閱https://git-scm.com/docs/git-checkout。 –

回答

2

你應該參考一個特定的提交來確保你的確是你所期望的代碼版本。

要查找提交編號,您可以檢查github/bitbucket或任何遠程存儲庫。如果你還沒有「UI庫」,你可以列出你使用git log命令,https://git-scm.com/docs/git-log,例如承諾:

git log -n10 

將顯示已保存到樹10次最後的提交。一旦你找到你的承諾,你可以從這裏創建新的分支:

git checkout -b master_de1974 a9c146a09505837ec03b 

a9c146a09505837ec03b是你的提交數量。然後你可以確定你是在好日子/承諾,通過再次打字

git log -n1 

它應該顯示你選擇要提交的提交。

+0

但是如果你不是在尋找*你的*提交,而是從存儲庫? – pixel

+1

命令'git log -n'返回分支上的所有提交,所以它不僅僅是你的提交,而是你當前分支中的所有提交。 – olibiaz

相關問題