git操作常用命令
git clone 拉取代码
git branch -a 查看当前所在分支
git checkout 分支名 切换本地分支
git checkout -b 分支名。 创建新分支,并且将当前分支代码拷贝到新分支上
git status 查看修改状态
git add . 提交所有修改文件
git commit -m ‘提交本地暂缓地区’
切换到需要合并到分支
Git pull 同步代码,拉取远端分支代码
gitk 查看commitid
方式一
git cherry-pick ‘commitid’
只合并部分代码变动 (新建分支所修改的部分,而不是分支所有的代码进行合并(git merge))
方式二
合并[start,end]之间的提交,包含start(合入多个commitid)
git cherry-pick start-commit-hash^..end-commit-hash
方式三
git merge 分支名字
如果没有冲突就直接提交。git.push
如果有冲突,解决完冲突之后 git add .
然后不用 commit, 直接使用 git cherry-pick --continue,当提交完成看到信息后,直接回车结束,如果退出则会打断 continue。
git stash
当我们在当前分支进行修改时,需要进行切换分支又不想提交当前代码时,我们可以将当前代码进行缓存然后就可以进行切换带分支了.
首先进行提交
git add .
然后不需要进行commit
git stash (缓存当前)
然后就可以进行切换分支了,之后想要解除缓存,只需要回到当前分支执行命令
git stash pop
git 删除指令:
首先切换分支,离开需要删除的分支,然后再进行删除 git branch -D 分支名
git 解决冲突英文含义
选项 | 含义 |
Accept Current Change | 接受当前分支1的修改 |
Accept Incoming Change | 接受pull导入主分支的修改 |
Accept Both Change | 同时接受两个分支的修改 |
Compare Changes | 对比修改,主要用于手动修改 |
git 代码回滚
git reset --hard commit_id
git reset --hard commit_id 退到/进到,指定commit的id(这次提交之前或之后的提交都会回滚)
回滚后提交可能会失败,必须强制提交
强推到远程:(可能需要解决对应分支的保护状态)
git push origin HEAD --force
git创建分支并推送到远程分支
1)新建本地分支
git checkout -b dev
2)把新建的本地分支push到远程服务器,远程分支与本地分支同名
git push origin dev:dev
使用git branch -a查看所有分支,会看到remotes/origin/dev这个远程分支,说明新建远程分支成功。
3)删除远程分支
git push origin --delete dev