最近由于一个小组员的github客户端出现问题,需要用到git命令,于是稍作整理。
在Windows系统中,客户端是挺好用的,但是由于分工合作,往往会出现冲突,在解决冲突的问题上,命令行比客户端有时候更好用。
下面这里贴一下阮一峰大神的图片,关于git的工作区、暂存区、仓库和远程仓库的关系
常用命令
git clone [url] 克隆一个项目
git add . 添加所有的文件到暂存区
git commit -m [message] 提交暂存区的内容到仓库区(相当于客户端中的commit)
git push 将本地仓库区内容推到远程仓库
git pull 取回远程仓库的内容到本地
git checkout [branch] 切换到某个分支
git checkout 遗弃本地所有的change
git merge origin branch 将远程分支merge到本地分支
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
两个比较容易弄混的命令,git fetch
和git pull
git fetch origin branch 从远程仓库获取最新版本到本地,不自动merge
git pull origin branch 从远程获取最新并merge到本地
- 1
- 2
撤销命令
git checkout [file] 撤销某一个文件的change
git checkout [commit][file] 撤销某个commit的文件
git reset [file] 重置暂存区的指定文件,工作区不变
git reset --hard 重置暂存区和工作区,与上次commit保持一致
git reset [commit] 重置到指定commit,重置暂存区,工作区不变
git revert [commit] 新建一个commit,用来撤销指定commit,并应用到当前分支,相当于回退到某个commit节点