Git 常用命令总结

2018-03-22  本文已影响0人  greenteaObject

创建版本库,添加,提交

// 初始化
git init
// 把文件修改添加到暂存区
git add .
// 把暂存区的所有内容提交到当前分支
git commit -m 'something'

只有add到暂存区才能加入到commit
工作区 ---add---> 暂存区 ---commit---> 当前分支

Git的版本

// 查看状态
git status
// 查看修改内容
git diff
回退/未来
// 查看提交历史
git log
// 查看当前版本
git reset --hard HEAD
// 回退到上一个版本
git reset --hard HEAD^
// 返回到最新的版本(从过去到未来)
git reset --hard 'commit id'
// 通过命令日志来回到未来
git reflog
git reset --hard 'commit id'
工作区

即你初始化时的文件夹

版本库

工作区的隐藏目录.git

撤销修改

第一种:修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态
第二种:已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态

// 丢弃工作区的修改
git checkout -- .

已经添加到暂存区

// 撤销暂存区修改
git reset HEAD 'file'
// 再丢弃工作区的修改
git checkout -- .
删除
// 确认从版本库删除
git rm 'file'
git commit -m 'delete'
// 撤销删除
git checkout -- 'file'

git checkout其实就是用版本库的版本替换工作区的版本

添加远程库
// 关联
git remote add origin git@github.com:name/learngit.git
// 第一次推送
git push -u origin master

加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令

克隆
git clone git@github.com:name/learngit.git

分支

// 创建分支,-b参数表示创建并切换
git checkout -b dev
// 相当于
 // 创建分支
 git branch dev
 // 切换分支
 git checkout dev
// 查看当前分支
git branch 
// 合并
git merge dev
// 删除分支
git branch -d dev
// 将未合并过的分支强制删除
git branch -D <name>
冲突
先解决冲突,在提交
// 查看合并情况
git log --graph --pretty=oneline --abbrev-commit
stash
// 存储工作现场
git stash
// 回到工作现场
git stash pop

标签

默认标签是打在最新提交的commit上的

// 打标签
git tag v1.0
// 查看所有标签
git tag
// 为指定commit打标签
git tag v1.1 'commit id'
// 删除标签
git tag -d v0.1
// 推送标签
git push origin v1.0
上一篇 下一篇

猜你喜欢

热点阅读