Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
git-doc-zh
提交
4d4ddc0c
G
git-doc-zh
项目概览
OpenDocCN
/
git-doc-zh
通知
0
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
git-doc-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
未验证
提交
4d4ddc0c
编写于
6月 19, 2019
作者:
飞
飞龙
提交者:
GitHub
6月 19, 2019
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #7 from honglyua/update-git-status
更新git status中文
上级
61a12231
a70126e3
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
34 addition
and
34 deletion
+34
-34
docs/7.md
docs/7.md
+34
-34
未找到文件。
docs/7.md
浏览文件 @
4d4ddc0c
...
...
@@ -14,9 +14,9 @@ git status [<options>…] [--] [<pathspec>…]
## 描述
显示索引文件与当前HEAD提交之间存在差异的路径,工作树与索引文件之间存在差异的路径,以及工作树中未由Git跟踪的路径(
[
gitignore不会忽略这些路径[5]
](
https://git-scm.com/docs/gitignore
)
)。第一个是你_将_通过运行
`git commit`
提交的内容;第二个和第三个是你_可以通过在运行
`git commit`
之前运行 _git add_ 来提交_
。
显示索引文件与当前HEAD提交之间存在差异的路径,工作树与索引文件之间存在差异的路径,以及工作树中未由Git跟踪的路径(
和不会被
[
gitignore[5]
](
https://git-scm.com/docs/gitignore
)
忽略的路径 )。第一个显示的是你 _将_ 通过运行
`git commit`
提交的内容;第二个和第三个显示的是你在运行
`git commit`
之前运行 _git add_ 来提交的内容
。
##
OPTIONS
##
选项
```
-s
...
...
@@ -36,7 +36,7 @@ git status [<options>…] [--] [<pathspec>…]
--branch
```
即使是短格式显示分支和跟踪信息
。
显示分支和跟踪信息,即使是在短格式下
。
```
--show-stash
...
...
@@ -78,15 +78,15 @@ version参数用于指定格式版本。这是可选的,默认为原始版本
显示未跟踪的文件。
mode参数用于指定未跟踪文件的处理。它是可选的:它默认为
_所有_,如果指定,它必须粘
在选项上(例如
`-uno`
,但不是
`-u no`
)。
mode参数用于指定未跟踪文件的处理。它是可选的:它默认为
_all_,如果指定,它必须紧跟
在选项上(例如
`-uno`
,但不是
`-u no`
)。
可能的选择是:
*
_
没有
_ - 显示没有未跟踪的文件。
*
_
no
_ - 显示没有未跟踪的文件。
*
_
正常
_ - 显示未跟踪的文件和目录。
*
_
normal
_ - 显示未跟踪的文件和目录。
*
_
全部
_ - 还显示未跟踪目录中的单个文件。
*
_
all
_ - 还显示未跟踪目录中的单个文件。
如果未使用
`-u`
选项,则会显示未跟踪的文件和目录(即与指定
`normal`
相同),以帮助您避免忘记添加新创建的文件。由于在文件系统中查找未跟踪文件需要额外的工作,因此在大型工作树中此模式可能需要一些时间。如果支持,请考虑启用未跟踪的缓存和拆分索引(请参阅
`git update-index --untracked-cache`
和
`git update-index --split-index`
),否则您可以使用
`no`
让
`git status`
更快地返回,而不显示未跟踪的文件。
...
...
@@ -96,7 +96,7 @@ mode参数用于指定未跟踪文件的处理。它是可选的:它默认为_
--ignore-submodules[=<when>]
```
在查找更改时忽略对子模块的更改。
<
当
>
可以是“none”,“untracked”,“dirty”或“all”,这是默认值。使用“none”时,如果子模块包含未跟踪或修改的文件,或者其HEAD与超级项目中记录的提交不同,则可以使用“无”来修改子模块,并可用于覆盖
[
中 _ignore_ 选项的任何设置git-config [1]
](
https://git-scm.com/docs/git-config
)
或
[
gitmodules [5]
](
https://git-scm.com/docs/gitmodules
)
。当使用“未跟踪”时,如果子模块仅包含未跟踪的内容(但仍会扫描修改的内容),则子模块不会被视为脏。使用“脏
”忽略对子模块工作树的所有更改,仅显示存储在超级项目中的提交的更改(这是1.7.0之前的行为)。使用“all”隐藏对子模块的所有更改(并在设置配置选项
`status.submoduleSummary`
时禁止子模块摘要的输出)。
在查找更改时忽略对子模块的更改。
<when>
可以是“none”,“untracked”,“dirty”或“all”,这些都是默认值。使用“none”时,如果子模块包含未跟踪或修改的文件,或者其HEAD与超级项目中记录的提交不同,则可以使用“none”来修改子模块,并可用于覆盖
[
git-config [1]
](
https://git-scm.com/docs/git-config
)
或
[
gitmodules [5]
](
https://git-scm.com/docs/gitmodules
)
中都 _ignore_ 选项的任何设置。当使用“untracked”时,如果子模块仅包含未跟踪的内容(但仍会扫描修改的内容),则子模块不会被视为dirty。使用“dirty
”忽略对子模块工作树的所有更改,仅显示存储在超级项目中的提交的更改(这是1.7.0之前的行为)。使用“all”隐藏对子模块的所有更改(并在设置配置选项
`status.submoduleSummary`
时禁止子模块摘要的输出)。
```
--ignored[=<mode>]
...
...
@@ -104,17 +104,17 @@ mode参数用于指定未跟踪文件的处理。它是可选的:它默认为_
同时显示被忽略的文件。
mode参数用于指定忽略文件的处理。它是可选的:它默认为
_传统
_。
mode参数用于指定忽略文件的处理。它是可选的:它默认为
_traditional
_。
可能的选择是:
*
_traditional_ - 显示被忽略的文件和目录,除非指定了--untracked-files = all,在这种情况下,将显示被忽略目录中的单个文件。
*
_
没有
_ - 显示没有被忽略的文件。
*
_
no
_ - 显示没有被忽略的文件。
*
_
匹配
_ - 显示与忽略模式匹配的被忽略的文件和目录。
*
_
matching
_ - 显示与忽略模式匹配的被忽略的文件和目录。
当指定
_匹配_
模式时,将显示与忽略模式明确匹配的路径。如果目录与忽略模式匹配,则会显示该目录,但不会显示忽略目录中包含的路径。如果目录与忽略模式不匹配,但忽略了所有内容,则不显示该目录,但会显示所有内容。
当指定
_matching_
模式时,将显示与忽略模式明确匹配的路径。如果目录与忽略模式匹配,则会显示该目录,但不会显示忽略目录中包含的路径。如果目录与忽略模式不匹配,但忽略了所有内容,则不显示该目录,但会显示所有内容。
```
-z
...
...
@@ -130,7 +130,7 @@ mode参数用于指定忽略文件的处理。它是可选的:它默认为_传
--no-column
```
在列中显示未跟踪的文件。有关选项语法,请参阅配置变量column.status。没有选项的
`--column`
和
`--no-column`
分别相当于
和_永远不会
_。
在列中显示未跟踪的文件。有关选项语法,请参阅配置变量column.status。没有选项的
`--column`
和
`--no-column`
分别相当于
_always_ 和 _never
_。
```
--ahead-behind
...
...
@@ -140,7 +140,7 @@ mode参数用于指定忽略文件的处理。它是可选的:它默认为_传
--no-ahead-behind
```
显示或不显示分支相对于其上游分支
的详细前/后计
数。默认为true。
显示或不显示分支相对于其上游分支
领先或落后多少节点
数。默认为true。
```
--renames
...
...
@@ -164,9 +164,9 @@ mode参数用于指定忽略文件的处理。它是可选的:它默认为_传
参见
[
gitglossary [7]
](
https://git-scm.com/docs/gitglossary
)
中的 _pathspec_ 条目。
##
OUTPUT
##
输出
此命令的输出旨在用作提交模板注释。默认的长格式设计
为人类可读,详细和描述性。其内容和格式随时可能
更改。
此命令的输出旨在用作提交模板注释。默认的长格式设计
很人性化,易读,详细和可描述性。其内容和输出格式随时可
更改。
与许多其他Git命令不同,输出中提到的路径是相对于当前目录的,如果您在子目录中工作(这是故意的,以帮助剪切和粘贴)。请参阅下面的status.relativePaths配置选项。
...
...
@@ -181,11 +181,11 @@ XY ORIG_PATH -> PATH
其中
`ORIG_PATH`
是重命名/复制内容的来源。只有在重命名或复制条目时才会显示
`ORIG_PATH`
。
`XY`
是一个双字母状态代码。
字段(包括
`-
>
`
)通过单个空格彼此分开。如果文件名包含空格或其他不可打印的字符,则该字段将以C字符串文字的方式引用:由ASCII双引号(34)字符包围,并使用内部特殊字符反斜杠转义。
字段(包括
`-
>
`
)通过单个空格彼此分开。如果文件名包含空格或其他不可打印的字符,则该字段将以C字符串文字的方式引用:由ASCII双引号(34)字符包围,并使用内部特殊字符反斜杠转义。
对于具有合并冲突的路径,
`X`
和
`Y`
显示合并每一侧的修改状态。对于没有合并冲突的路径,
`X`
显示索引的状态,
`Y`
显示工作树的状态。对于未跟踪路径,
`XY`
为
`??`
。其他状态代码可以解释如下:
*
''=未经修改
*
''
=未经修改
*
_M_ =修改
...
...
@@ -229,9 +229,9 @@ U U unmerged, both modified
-------------------------------------------------
```
子模块具有更多状态,
而是报告M子模块具有与子模块中已修改内容的索引中记录的HEAD不同的HEAD
?子模块具有未跟踪的文件,因为子模块中的修改内容或未跟踪文件无法通过超级项目中的
`git add`
添加以准备提交。
子模块具有更多状态,
但是不报告M子模块具有不同的HEAD,而是在子模块已修改内容的索引中记录
?子模块具有未跟踪的文件,因为子模块中的修改内容或未跟踪文件无法通过超级项目中的
`git add`
添加以准备提交。
_m_
和
_?_ 递归应用。例如,如果子模块中的嵌套子模块包含未跟踪的文件,则报告为
_?_ 也是如此。
_m_
和
_?_ 递归应用。例如,如果子模块中的嵌套子模块包含未跟踪的文件,则报告为
_?_ 也是如此。
如果使用-b,则短格式状态前面有一行
...
...
@@ -239,21 +239,21 @@ _m_ 和_?_ 递归应用。例如,如果子模块中的嵌套子模块包含
## branchname tracking info
```
###
瓷器
版本1
###
Porcelain格式
版本1
版本1
瓷器格式类似于短格式,但保证不会在Git版本之间以向后兼容的方式或基于用户配置进行更改。这使其成为脚本解析的理想选择。上面简短格式的描述也描述了瓷器
格式,但有一些例外:
版本1
中porcelain格式类似于短格式,但保证不会在Git版本之间以向后兼容的方式或基于用户配置进行更改。这使其成为脚本解析的理想选择。上面简短格式的描述也描述了porcelain
格式,但有一些例外:
1.
用户的color.status配置不受
尊重
;颜色永远都会关闭。
1.
用户的color.status配置不受
认可
;颜色永远都会关闭。
2.
不尊重用户的status.relativePaths配置
;显示的路径始终相对于存储库根目录。
2.
用户的status.relativePaths配置不受认可
;显示的路径始终相对于存储库根目录。
还有一种备用-z格式建议用于机器解析。在该格式中,状态字段是相同的,但其他一些事情会发生变化。首先,
_-
>
从重命名条目中省略_并且字段顺序被反转(例如,_从 -
>
到_变为_到
_)。其次,NUL(ASCII 0)跟在每个文件名后面,将空格替换为字段分隔符和终止换行符(但空格仍然将状态字段与第一个文件名分开)。第三,包含特殊字符的文件名不是特殊格式的;不执行引用或反斜杠转义。
还有一种备用-z格式建议用于机器解析。在该格式中,状态字段是相同的,但其他一些事情会发生变化。首先,
-> 从重命名条目中省略, 并且字段顺序被反转(例如,_from ->_ 到变为 _from
_)。其次,NUL(ASCII 0)跟在每个文件名后面,将空格替换为字段分隔符和终止换行符(但空格仍然将状态字段与第一个文件名分开)。第三,包含特殊字符的文件名不是特殊格式的;不执行引用或反斜杠转义。
任何子模块更改都会报告为已修改
`M`
而不是
`m`
或单个
`?`
。
###
瓷器
版本2
###
Porcelain格式
版本2
版本2格式添加有关工作树状态和更改项目的更多详细信息。版本2还定义了一组易于解析的可扩展可选标头。
版本2格式添加
了
有关工作树状态和更改项目的更多详细信息。版本2还定义了一组易于解析的可扩展可选标头。
标题行以“#”开头,并添加以响应特定的命令行参数。解析器应该忽略它们无法识别的标头。
...
...
@@ -272,9 +272,9 @@ Line Notes
------------------------------------------------------------
```
###
更改了跟踪条目
###
跟踪条目修改
在标题之后,为跟踪的条目打印一系列行。可以
使用三种不同线格式中的一种来根据变化的类型
来描述条目。跟踪的条目以未定义的顺序打印;解析器应允许以任何顺序混合使用3种线型。
在标题之后,为跟踪的条目打印一系列行。可以
根据变化的类型在三种不同线格式中的选择一种
来描述条目。跟踪的条目以未定义的顺序打印;解析器应允许以任何顺序混合使用3种线型。
普通更改的条目具有以下格式:
...
...
@@ -366,17 +366,17 @@ Field Meaning
如果没有
`-z`
选项,则会引用具有“异常”字符的路径名,如配置变量
`core.quotePath`
所述(参见
[
git-config [1]
](
https://git-scm.com/docs/git-config
)
)。
##
组态
##
配置
该命令符合
`color.status`
(或
`status.color`
- 它们的含义相同,后者保持向后兼容性)和
`color.status.
<slot>
`
配置变量以使其输出着色。
该命令符合
`color.status`
(或
`status.color`
- 它们的含义相同,后者保持向后兼容性)和
`color.status.
<slot>
`
配置变量以使其输出着色。
如果config变量
`status.relativePaths`
设置为false,则显示的所有路径都相对于存储库根目录,而不是当前目录。
如果
`status.submoduleSummary`
设置为非零数字或为真(与-1或无限数字相同),则将为长格式启用子模块摘要,并显示已修改子模块的提交摘要(请参阅
--summary
[
git-submodule [1]
](
https://git-scm.com/docs/git-submodule
)
的限制选项。请注意,当
`diff.ignoreSubmodules`
设置为 _all_ 时,或者仅对于那些
`submodule.<name>.ignore=all`
的子模块,将禁止所有子模块的status命令的摘要输出。要查看被忽略的子模块的摘要,您可以使用--ignore-submodules = dirty命令行选项或 _git子模块摘要_
命令,该命令显示类似的输出但不遵循这些设置。
如果
`status.submoduleSummary`
设置为非零数字或为真(与-1或无限数字相同),则将为长格式启用子模块摘要,并显示已修改子模块的提交摘要(请参阅
[
git-submodule [1]
](
https://git-scm.com/docs/git-submodule
)
的--summary-limit选项)。请注意,当
`diff.ignoreSubmodules`
设置为 _all_ 时,或者仅对于那些
`submodule.<name>.ignore=all`
的子模块,将禁止所有子模块的status命令的摘要输出。要查看被忽略的子模块的摘要,您可以使用--ignore-submodules=dirty命令行选项或 _git submodule summary_
命令,该命令显示类似的输出但不遵循这些设置。
##
背景
刷新
##
后台
刷新
默认情况下,
`git status`
将自动刷新索引,从工作树更新缓存的统计信息并写出结果。写出更新的索引是一种并非严格必要的优化(
`status`
计算自身的值,但将它们写出来只是为了保
存后续程序不重复我们的计算)。当
`status`
在后台运行时,写入期间保持的锁定可能与其他同时
进程冲突,导致它们失败。在后台运行
`status`
的脚本应考虑使用
`git --no-optional-locks status`
(详见
[
git [1]
](
https://git-scm.com/docs/git
)
)。
默认情况下,
`git status`
将自动刷新索引,从工作树更新缓存的统计信息并写出结果。写出更新的索引是一种并非严格必要的优化(
`status`
计算自身的值,但将它们写出来只是为了保
证后续程序不重复的计算)。当
`status`
在后台运行时,写入期间保持的锁定可能与其他同时的
进程冲突,导致它们失败。在后台运行
`status`
的脚本应考虑使用
`git --no-optional-locks status`
(详见
[
git [1]
](
https://git-scm.com/docs/git
)
)。
## 也可以看看
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录