我想知道版本控制已知的文件列表。
我知道在 SVN 中,你可以这样做:
svn -v status
然后你得到一个列表
"[rev#1] [rev#2] [creator] [file name]"
rev#1 是包含此文件的最后一个修订版,rev#2 是包含此文件的第一个修订版。
此列表包含 svn 跟踪的所有文件,而不仅仅是那些具有本地更改的文件。
我想知道如何使用 GIT
最佳答案
你有this proposition与 git 等效的 svn 状态:
git config alias.svn-status \!"\
{ \
git ls-files -o --directory -t ; \
git status | grep --color=never 'deleted: ' | sed 's|^.*deleted: ||' | sed 's|^|D |' ; \
git ls-files -m -s | awk '{print \$NF}' | sort -u | sed 's|^|M |' ; \
} \
| sort -k 2 \
| sed 's|^\\(.\\) *|\\1 |'"
我怀疑 Techism 提到的 git log --name-status
(在评论中)在这个SO question可能会使别名更短。
它的变体实际上是基于diff --name-status
:
svn-status = "! git ls-files --exclude-per-directory=.gitignore --exclude-from=.git/info/exclude --exclude-from=$HOME/.gitignore --others -t | sed 's| |\t|'; git diff HEAD --name-status "
关于svn - 相当于 "svn -v status"的 git,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5279981/