是否有所有状态符号(例如AD,MM,??)输出的参考git status --porcelain?我正在解析此输出,并需要确保我已涵盖所有排列。通读 git 源代码,看起来输出是动态组装的,而不是模板化的,而且我对找到每个边缘情况的能力没有信心。
这是我所拥有的:
??: 'untracked',
A: 'staged',
AD: 'staged_deleted',
AM: 'staged_modified',
D: 'deleted',
M: 'modified',
MM: 'staged_modified',
R: 'renamed',
UU: 'conflicted'
Run Code Online (Sandbox Code Playgroud)
它位于以下的短格式部分下git status:
或存在合并冲突的路径,
X并Y显示合并每一侧的修改状态。对于没有合并冲突的路径,X显示索引的状态,并Y显示工作树的状态。对于未跟踪的路径,XY是??. 其他状态码可以解释如下:' ' = 未修改
M = 修改
A = 添加
D = 已删除
R = 重命名
C = 复制
U = 已更新但未合并
X Y Meaning
-------------------------------------------------
[MD] not updated
M [ MD] updated in index
A [ MD] added to index
D [ M] deleted from index
R [ MD] renamed in index
C [ MD] copied in index
[MARC] index and work tree matches
[ MARC] M work tree changed since index
[ MARC] D deleted in work tree
-------------------------------------------------
D D unmerged, both deleted
A U unmerged, added by us
U D unmerged, deleted by them
U A unmerged, added by them
D U unmerged, deleted by us
A A unmerged, both added
U U unmerged, both modified
-------------------------------------------------
? ? untracked
! ! ignored
-------------------------------------------------
Run Code Online (Sandbox Code Playgroud)