$ git config --global user.name "xxx"
$ git config --global user.email "xxx"
git reset commit_id 撤销commit内容
git push --set-upstream origin 分支名 本地创建分支同步到远程
git branch -d 分支名 删除本地分支(-D强制删除)
git push origin :分支名 删除远程分支(origin后面有空格不能少)
git branch -r -d origin/branch-name 删除远程分支
git remote show origin 可以查看remote地址,远程分支,还有本地分支与之相对应关系等信息
git remote prune origin 删除远程仓库不存在的分支
git fetch origin //从远程仓库更新信息 同步远程新增分支到本地
git log --pretty=oneline 只查看当前分支提交日志commit id
gitlab合并代码冲突到本地修改冲突(例子 :dev2 合并到 master)
2.git checkout -b 要合并的分支名 origin/要合并的分支名, 例子:git checkout -b dev2 origin/dev2
4.git checkout origin/合并到此的分支名, 例子:git checkout origin/master
5.git merge --no-ff 要合并的分支名, 例子:git merge --no-ff dev2
6. git push origin 合并到此的分支名 ,例子:git push origin master
git push origin HEAD:合并到此的分支名,例子:git push origin HEAD:master
注:如果失败可以尝试使用git checkout 临时分支名 回到临时分支再操作
使用git reset是不影响远程分支的,一切都在本地发生。如果回退需要很快影响远程分支的,应该使用git revert。
1.git reset HEAD 回退当前版本,已经add过使用(HEAD 指向当前分支的版本最新commit id)
2.git reset HEAD^ 回退上一个版本 ,HEAD^^ 上上一个版本, HEAD~100 退回之前100个版本,已经commit 过使用
3.git reset commit_id 退回指定的版本commit id
注:git reset 默认是 git reset --mixed
git reset --mixed commit_id 修改会放到工作区 就是没有add操作
git reset --soft commit_id 修改会放到暂存区 就是已经add,没有commit
git reset --hard commit_id 修改的直接过滤掉(注:这种操作需要谨慎,如果退回之前版本,后面的版本不需要可以这么操作)
根据你要回退的提交所做的改动做相反的改动,然后重新提交代码,使代码达到没有这些旧提交所能达到的状态,历史记录可以追踪
2.git revert -n commit_id -m 1 注:-n是不要自动合并,-m是指使用其他分支上merge之前的commit,1表示最新合并到此分支的其他分支