目录
git 基础
git 版本查询
<span style="color:#333333"><span style="color:#3300aa">git</span> <span style="color:#0000cc">--version</span></span>
git的配置
--global
:让所有仓库都生效
<span style="color:#333333"><span style="color:#3300aa">git</span> config <span style="color:#0000cc">--global</span> user.name <span style="color:#aa1111">"Finn Ma"</span> <span style="color:#aa5500">#设置用户名,初次使用必须首先设置</span>
<span style="color:#3300aa">git</span> config <span style="color:#0000cc">--global</span> user.email Finn@example.com <span style="color:#aa5500">#设置用户邮箱,初次使用必须首先设置</span>
<span style="color:#3300aa">git</span> config <span style="color:#0000cc">--global</span> core.autocrlf <span style="color:#221199">false</span> <span style="color:#aa5500">#关闭换行符类型转换</span>
<span style="color:#3300aa">git</span> config <span style="color:#0000cc">--global</span> credential.helper store <span style="color:#aa5500">#保存凭证</span>
<span style="color:#3300aa">git</span> config <span style="color:#0000cc">--list</span> <span style="color:#aa5500">#查看git配置</span>
<span style="color:#3300aa">git</span> config <span style="color:#0000cc">--show-origin</span> <span style="color:#aa5500">#查看所有的配置以及它们所在的文件</span>
<span style="color:#3300aa">git</span> config <span style="color:#0000cc">--unset</span> user.name <span style="color:#aa5500">#删除用户名配置</span></span>
获取git仓库
通常有两种获取 Git 项目仓库的方式:
-
将尚未进行版本控制的本地目录转换为 Git 仓库
<span style="color:#333333"><span style="color:#3300aa">git</span> init </span>
-
克隆现有仓库
<span style="color:#333333"><span style="color:#3300aa">git</span> clone <url>
<span style="color:#3300aa">git</span> clone <url> <filename> <span style="color:#aa5500">#指定新的目录名</span>
<span style="color:#aa5500">#Example</span>
<span style="color:#3300aa">git</span> clone https://github.com/FinnMa1/test.git
<span style="color:#3300aa">git</span> clone https://github.com/FinnMa1/test.git my_test</span>
查看文件状态
<span style="color:#333333"><span style="color:#3300aa">git</span> status</span>
git status 命令的输出十分详细,但其用语有些繁琐。git status -s
你将得到一种 格式更为紧凑的输出。
<span style="color:#333333"><span style="color:#3300aa">git</span> status <span style="color:#0000cc">-s</span>
M README
MM Rakefile
A lib/git.rb
M lib/simplegit.rb
?? LICENSE.txt</span>
??:未跟踪文件,A:新添加到暂存区中的文件,M:修改过的文件. 输出中有两栏,左栏指明了暂存区的状态,右栏指明了工作区的状态。例如,上面的状态报告显示: README文件在工作区已修改但尚未暂存,而 lib/simplegit.rb 文件已修改且已暂存。 Rakefile文件已修,暂存后又作了修改,因此该文件的修改中既有已暂存的部分,又有未暂存的部分。
跟踪新文件
git add 命令使用文件或目录的路径作为参数;如果参 数是目录的路径,该命令将递归地跟踪该目录下的所有文件.
这是个多功能命令:可以用它开 始跟踪新文件,或者把已跟踪的文件放到暂存区,还能用于合并时把有冲突的文件标记为已解决状态等。 将这 个命令理解为“精确地将内容添加到下一次提交中”而不是“将一个文件添加到项目中”要更加合适
<span style="color:#333333"><span style="color:#3300aa">git</span> add <file>
<span style="color:#aa5500">#Example</span>
<span style="color:#3300aa">git</span> add README.txt</span>
忽略文件
创建一个名为 .gitignore的文件,列出要忽略的文件的模式。 文件 .gitignore 的格式规范如下:
-
所有空行或者以 # 开头的行都会被 Git 忽略
-
可以使用标准的 glob 模式匹配,它会递归地应用在整个工作区中
-
匹配模式可以以(/)开头防止递归
-
匹配模式可以以(/)结尾指定目录
-
要忽略指定模式以外的文件或目录,可以在模式前加上叹号(!)取反
<span style="color:#333333"><span style="color:#330