本文主要是介绍git命令之add,commit,push,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
参考http://www.zhanglian2010.cn/2014/07/git-pull-vs-fetch-and-merge/
git有好几个区,工作区(workspace)、暂存区(index)、本地仓库(local repository)、还有远程仓库(remote repository)。远程仓库为我们保存一份代码,如github,而工作区、暂存区和本地仓库都在本地,这也就是为什么我们在没有网络的环境下也能使用git提交(commit)代码,因为提交仅仅是提交到本地仓库中,待有网络之后在推送(push)到远程仓库。
1.git add命令
git命令主要是用于把我们要提交的文件的信息添加到暂存区中。
用法有git add -u [<path>],表示把<path>中所有tracked文件中被修改过或者已经删除的信息添加到暂存库中。它不会处理untracked的文件。
git add -a [<path>],表示把<path>中所有tracked文件中被修改或者被删除文件和所有untracked的文件信息添加到暂存区。
git add -i [<path>],表示查看<path>中所有被修改过或者被删除过但是没有提交的文件。
README.md和test.txt表示已经执行了git add,已经进入到了暂存区,还没有进行提交。
测试.txt表示已经处于tracked下,被修改了,但是还没有被执行git add到暂存区。
1.1 update子命令表示把已经tracked的文件加入到暂存区。
先输入2,然后回车,然后开始选择update的文件,选1后回车,如果没有结束当前update输入,再输入回车,测试.txt文件就加入到暂存区了。如下如:
1.2 revert子命令表示把已经加入到暂存区的文件从暂存区中剔除。
操作方法和上面一样,下输入3,代表选择的是revert操作,然后选择要操作的文件,回车确定,在回车退出revert操作,文件就从暂存区中剔除了。
1.3 diff子命令
通过diff子命令,可以比较暂存区中文件和原版本的差异。
2 commit命令
2.1 git commit -m "提交的描述信息"
将暂存区中的文件提交到本地仓库中
2.2 git commit - a -m "提交的描述信息"
或者git commit -am "提交的描述信息",这个方法就是可以把tracked的文件提交到本地仓库,就算这件没有git add,也能提交。这个就是省略了git add这一步。
3 git push <远程主机名> <本地分支名> : <远程分支名>
注意,分支推送顺序的写法是<来源地>:<目的地>,所以git pull是<远程分支>:<本地分支>,而git push是<本地分支>:<远程分支>。
3.1 git push origin master
如果省略远程分支名,则表示将本地分支推送与之存在”追踪关系”的远程分支(通常两者同名),如果该远程分支不存在,则会被新建。
上面命令表示,将本地的master分支推送到origin主机的master分支。如果后者不存在,则会被新建。
3.2 git push origin :master
如果省略本地分支名,则表示删除指定的远程分支,因为这等同于推送一个空的本地分支到远程分支,等同于 git push origin --delete master
这篇关于git命令之add,commit,push的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!