我在我的主git倉庫中有一個git子模塊。據我瞭解,主repo存儲SHA值(某處......),指向子模塊的「鏈接到」的特定提交。如何將Git子模塊指針恢復到存儲在存儲庫中的提交?
我進入我的子模塊並輸入git checkout some_other_branch
。我不知道我來自哪個承諾。
我想恢復該指針,使主repo和子模塊再次同步。
我的第一個(可能是天真的)本能是說git reset --hard
- 這似乎適用於其他一切。令我驚訝的是,這並不適用於這種情況。
所以我想通了,我可以鍵入git diff
,注意子模塊指針曾經有的SHA ID,然後進入子模塊和git checkout [SHA ID]
...但肯定必須有一個更簡單的方法?
由於我還在學習git子模塊,請隨時糾正我的術語,如果有我不知道的概念的話。
不知怎的,對我來說,我需要添加'--init'。如果沒有它,子模塊會保持'(新提交)'狀態。即使我的子模塊已經初始化。 – Ambidex
@Ambidex是的'--init'選項在所有這些中都是至關重要的。由於我的子模塊是通過https克隆的,因此係統提示輸入用戶名和密碼。我進入了這兩個文件夾,並設置遙控器使用'ssh'協議進行結賬。 –