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