您的位置:首页 > 其它

git的常用操作指令

2017-03-26 22:52 483 查看
git学习网址:

http://www.backlogtool.com/git-guide/cn/intro/intro2_3.html

廖雪峰的git教程

git的工作区和暂存区(描述git的工作流)



git init:初始化git仓库

git add <filename>:添加文件到仓库,可反复多次使用,添加多个文件;

git commit -m '描述': 提交文件到仓库

git status:查看工作区仓库中的文件状态

git diff <filename>:查看某文件修改了哪些地方

git log: 查看当前工作区所有的提交记录,从上到下由最近提交到最远提交(显示为竖向展示比较长,不便于查看)

示例图如下:



git log --pretty=oneline:查看当前工作区所有的提交记录,从上到下由最近提交到最远提交(每一条记录为横向展示,便于查看,commit_id提交的版本号 提交日志)

示例图如下:



git reset --hard <commit_id>:git log或者git reflog查看日志记录得到commit_id提交的git版本号,就可以使用此命令在git的各个版本直接自由穿梭

穿梭前,用
git log
可以查看提交历史,以便确定要回退到哪个版本。

示例图如下:



git reflog:查看命令历史(要重返未来,用
git reflog
查看命令历史,以便确定要回到未来的哪个版本)

示例图如下:(现在我又要从当前版本回到之前创建index.html那个版本,就需要通过git reflog查看命令历史得到创建index.html那个版本的版本号,然后使用git reset --hard <commit_id>回到那个版本)





git checkout -- <filename>:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,checkout的文件与版本库中最新版本的文件内容一致

git reset HEAD <filename>:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想回到暂存区无此文件时,使用此命令后,工作区仍然有此修改,可使用git checkout -- <filename>命令回到与版本库最新版本文件内容一致

git rm <filename>:git删除文件

git log --graph --pretty=oneline --abbrev-commit:图示形式展示log日志

git branch:查看分支,http://blog.csdn.net/xiruanliuwei/article/details/6919319

git branch -d <branchname>:删除分支

git checkout -b <branchname>:创建并切换到当前新建分支

git checkout -b <branch-name> origin/<branch-name>:在本地创建和远程某分支对应的分支,本地和远程分支的名称最好一致;

git branch -D <name>:强行删除分支,当新建的分支有修改提交的内容,但并未进行合并时,需要使用此命令进行强制删除

git clone:从远程服务器下载文件,相当于svn的checkout

git push origin <branchName>:上传本地修改的文件,推送需要指定本地分支,相当于svn的commit

git pull <远程主机名> <分支名>:相当于是从远程获取最新版本并merge到本地,相当于git fetch和git merge的组合

git fetch <远程主机名> <分支名>:相当于是从远程获取最新版本到本地,不会自动merge,http://www.yiibai.com/git/git_fetch.html

git merge <分支名>:切换到需要合并到的分支上,使用此命令合并分支,将其他分支上的内容合并到一起

git stash:使用此命令将会清除当前工作区的修改内容,git status将会看不到修改的内容,并且备份当前的工作区到stash list中,未完成不想修改但是又不得不切换到别的分支的时候,可以先git stash相当于备份,http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137602359178794d966923e5c4134bc8bf98dfb03aea3000

git stash list:查看备份工作区的备份

git stash apply <stashNum>:恢复工作区的备份,但工作区的备份不会被删除,需要使用命令:git stash drop来删除

git stash pop:恢复并删除工作区的备份

在做测试的时候,使用git clone将github上的项目下下来,修改之后再传上去的时候,提示everything up-to-date,解决方法参考此文档:http://www.cnblogs.com/sminocence/p/6546891.html

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo }
span.s1 { }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: