总结一些git常用命令
命令 | 作用 |
---|---|
$ git clone http:…… | 从git上拉代码 |
$ git branch | 查看所有分支 |
$ git branch my-branch-dev | 创建 my-branch-dev 分支 |
$ git branch -D my-branch-dev | 删除本地 my-branch-dev 分支 |
$ git checkout my-branch-dev | 跳转到分支 |
$ git status | 查看文件状态 |
$ git add test.txt | 添加 test.txt 文件至暂存区 |
$ git add . | 添加当前目录下所有文件 |
$ git reset HEAD | 撤销上一次add所有文件 |
$ git reset HEAD test.txt | 只撤销 test.txt 文件 |
$ git commit -m “功能解释” | 提交暂存区下所有文件 |
$ git push | 上传到git |
$ git pull | 从git更新 |
$ git cherry-pick e4244c39 | 将指定的提交(commit)应用于其他分支(转移前后commit的哈希值不一致) |
$ git cherry-pick e4244c39…094b8e6b | 转移多个commit(前开后闭) |
$ git cherry-pick e4244c39^…094b8e6b | 转移多个commit(前闭后闭) |
修改分支名
命令 | 作用 |
---|---|
$ git branch -m oldBranchName newBranchName | 修改本地分支名称 |
$ git push origin :oldBranchName | 将本地分支的远程分支删除 |
$ git push --set-upstream origin newBranchName | 将改名后的本地分支推送到远程,并将本地分支与之关联 |
将主分支"my-master"代码合并到自己分支"my-branch"
$ git fetch origin
$ git checkout -b "my-master" "origin/my-master"
$ git fetch origin
$ git checkout "my-branch"
$ git merge --no-ff "my-master"
$ git push origin "my-branch"
将自己分支"my-branch"代码merge到主分支"my-master"(缺点:会直接merge到主分支,管理员无法看到merge请求与此次merge差分,不需要管理员再次审核)
$ git checkout my-master
$ git pull origin my-master
$ git merge my-branch
$ git push origin my-master
回滚
$ git reset --hard 7973eec009e04546446463030dec8374b8e33 // 把HEAD指向提交的那次的前一次
$ git push -f -u origin my-branch // 将my-branch分支强制推送到远程仓库
若遇到Changes not staged for commit:
此问题:
解决方法(提交时加上参数:-a ,表示新增):
$ git commit -am "说明"
目前用到这么多,以后用的别的再添加,♥