我想知道版本控制已知的文件列表.
我知道在SVN中,您可以执行以下操作:
svn -v status
Run Code Online (Sandbox Code Playgroud)
然后你得到一份清单
"[rev#1] [rev#2] [creator] [文件名]"
rev#1是具有此文件的最后一个修订版,rev#2是具有此文件的第一个修订版.
此列表包含svn跟踪的所有文件,而不仅包含具有本地更改的文件.
我想知道如何使用GIT做到这一点
你确实有一个相当于 svn status 和 git 的建议:
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 |'"
Run Code Online (Sandbox Code Playgroud)
我怀疑Techism(在评论中)在这个SO 问题git log --name-status中提到的可能会使别名更短。
它的变体实际上基于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 "
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1181 次 |
| 最近记录: |