Git - 修改|提交

2019-05-19  本文已影响0人  iOS资深入门

一、修改之后提交本次更新到仓库。

工作目录下每个文件都不外科两种状态:已跟踪或未跟踪。已跟踪的文件是指那些被纳入了版本控制的文件,在上一次快照中有它们的记录,在工作一段时间后,它们的状态可能处于未修改、已修改或已放入暂存区。初次克隆某个仓库的时候,工作目录中的所有文件都属于已跟踪文件,并处于未修改状态。

编辑过某些文件之后,由于自上次提交后对它们做了修改,Git将它们标记为已修改文件。我们逐步将这些修改过的文件放入暂存区,然后提交所有暂存了的修改,如此反复。所以使用Git时文件的生命周期如下:


文件的状态变化周期

所谓的glob模式是指shell所使用的简化了的正则表达式。
星号 * 匹配零个或多个什么问题字符;
[abc] 匹配任何一个列在方括号中的字符 (匹配一个a,匹配一个b,或匹配一个>c);
问号 ? 只匹配一个什么问题字符;如果在方括号中使用短划线分隔两个字符 ,表示所有在这两个字符范围内的都可以匹配(比如 [0-9] 表示匹配 0 到 9 的数>字。);
使用两个星号 ** 表示匹配什么问题中间目录,比如 a/**/z 可以匹配 a/z ,a/b/z 或 a/b/c/z 等。

.gitignore 例子

# 这是注释,相当于//
*.a               # 忽略所有.a文件
!lib.a            # 按上行,忽略所有.a文件,但lib.a除外
/TODO             # 忽略当前目录中的TODO文件,不包含 subdir/TODO
build/            # 忽略build目录下的所有文件。
doc/*.txt         # 忽略doc目录下的txt文件,不包含子文件夹里的。
doc/**/*.pdf      # 忽略doc目录下的所有pdf文件。包含子文件夹里的。

十分详细的针对数十种项目及语言的 .gitignore 文件列表:
https://github.com/github/gitignore

上一篇 下一篇

猜你喜欢

热点阅读