git add
git add
命令将文件内容添加到索引(将修改添加到暂存区)。也就是将要提交的文件的信息添加到索引库中。
描述
将要提交的文件的信息添加到索引库中(将修改添加到暂存区),以准备为下一次提交分段的内容。 它通常将现有路径的当前内容作为一个整体添加,但是通过一些选项,它也可以用于添加内容,只对所应用的工作树文件进行一些更改,或删除工作树中不存在的路径了。
该命令可以在提交之前多次执行。它只在运行 git add
命令时添加指定文件的内容; 如果希望随后的更改包含在下一个提交中,那么必须再次运行 git add
将新的内容添加到索引。
示例
1 | git add . # 将所有修改添加到暂存区 |
git commit
git commit
命令用于将更改记录提交到存储库。将索引的当前内容与描述更改的用户和日志消息一起存储在新的提交中。
描述
git commit
命令将索引的当前内容与描述更改的用户和日志消息一起存储在新的提交中。
要添加的内容可以通过以下几种方式指定:
- 在使用
git commit
命令之前,通过使用git add
对索引进行递增的“添加”更改(注意:修改后的文件的状态必须为added
); - 通过使用
git rm
从工作树和索引中删除文件,再次使用git commit
命令; - 通过将文件作为参数列出到
git commit
命令(不使用--interactive
或--patch
选项),在这种情况下,提交将忽略索引中分段的更改,而是记录列出的文件的当前内容(必须已知到Git的内容); - 通过使用带有
-a
选项的git commit
命令来自动从所有已知文件(即所有已经在索引中列出的文件)中添加“更改”,并自动从已从工作树中删除索引中的rm
文件 ,然后执行实际提交; - 通过使用
--interactive
或--patch
选项与git commit
命令一起确定除了索引中的内容之外哪些文件应该是提交的一部分,然后才能完成操作。
如果提交后立即发现错误,可以使用 git reset
命令恢复。
示例
1 | git commit -m "the commit message" # git add 存储到暂存区之后将内容提交 |
git push
git push
命令用于将本地分支的更新,推送到远程主机。
描述
使用本地引用更新远程引用,同时发送完成给定引用所需的对象。可以在每次推入存储库时,通过在那里设置挂钩触发一些事件。当命令行不指定使用 <repository>
参数推送的位置时,将查询当前分支的 branch.*.remote
配置以确定要在哪里推送。 如果配置丢失,则默认为origin
。
示例
1 | git push origin master # 将本地的master分支推送到origin主机的master分支。如果master不存在,则会被新建。 |
git clone
git clone
命令将存储库克隆到新目录中。
描述
将存储库克隆到新创建的目录中,为克隆的存储库中的每个分支创建远程跟踪分支,并从克隆检出的存储库作为当前活动分支的初始分支。
示例
1 | git clone <版本库的网址> |
该命令会在本地主机生成一个目录,与远程主机的版本库同名。
1 | git clone <版本库的网址> <本地目录名> |
该命令可指定不同的目录名。
git fetch
git fetch
命令用于从另一个存储库下载对象和引用。
描述
从一个或多个其他存储库中获取分支或标签以及完成其历史所必需的对象。远程跟踪分支已更新,需要将这些更新取回本地,这时就要用到git fetch
命令。
示例
更新远程代码到本地仓库:
1 | 方式一: |