當前狀態: 我正在使用git diff-tree -r HASH
在特定的提交中列出所有添加,修改和刪除的文件。這工作到今天。如何列出添加到GIT存儲庫第一次提交的所有文件?
問題: 我想列出我第一次提交所有添加的文件,但是作爲參數傳遞不起作用第一HASH。爲什麼?
主要問題: 如何獲取我的第一次提交中添加的所有文件的列表?
當前狀態: 我正在使用git diff-tree -r HASH
在特定的提交中列出所有添加,修改和刪除的文件。這工作到今天。如何列出添加到GIT存儲庫第一次提交的所有文件?
問題: 我想列出我第一次提交所有添加的文件,但是作爲參數傳遞不起作用第一HASH。爲什麼?
主要問題: 如何獲取我的第一次提交中添加的所有文件的列表?
這對我的作品
git show <commit|branch-name> --name-only
git show --pretty=format: --name-only <revision>
對於第一個承諾,如果你堅持git diff-tree -r HASH
,還需要一個參數,4b825dc642cb6eb9a060e54bf8d69288fbee4904
。
4b825dc642cb6eb9a060e54bf8d69288fbee4904
是一棵空的樹。爲了使這個特殊的樹對象:
#inside your repo
git rm -r *
git write-tree
git reset HEAD --hard
還是更可靠的方法:
#inside your repo
git init temp
cd temp
git commit --allow-empty -m 'empty tree'
cd ..
git fetch temp/ master
rm -rf temp
現在git diff-tree -r HASH 4b825dc642cb6eb9a060e54bf8d69288fbee4904
作品。
您可以爲將來容易使用的樹對象添加標籤,並將其推送到其他回購站。
git tag void 4b825dc642cb6eb9a060e54bf8d69288fbee4904
git diff-tree -r HASH void
git push <remote> void
您不必創建空樹:它總是在那裏。如果您不想對幻數進行硬編碼,請使用'git hash-object -t tree'來查找它的哈希值;請參閱https://stackoverflow.com/q/9765453/1256452。 – torek
@torek太好了。謝謝! – ElpieKay