1、gitlab新增分支后,本地 git branch -r
看不到新增的分支
$ git fetch --all
2、gitlab上删除分支后,本地 git branch -r
还能看到
$ git branch -a #查看所有本地分支和远程分支,发现很多在远程仓库已经删除的分支在本地依然可以看到
$ git remote show origin #可以查看remote地址,远程分支,还有本地分支与之相对应关系等信息
$ git remote prune --dry-run origin #查看当前有哪些是该消失还存在的分支
$ git remote prune origin #删除本地那些远程仓库不存在的分支
$ git fetch --prune origin #如果没有结果输出说明已经删除完成了
3、git只合并某一个分支的某个commit
$ git log //在对应分支查看要合并的commitid
$ git checkout branch-current //切换到当前分支
$ git cherry-pick commit-id
git cherry-pick 163767a345fe88a8247b33717decedc43d01b7a5
4、撤销commit
$ git log //可查看提交记录
$ git reset --soft 版本号
$ git reset --soft HEAD^ //回到上一个版本
// 不删除工作区改动的代码,撤销commit,不撤销git add .
$ git reset --mixed 版本号
$ git reset --mixed HEAD^ //回到上一个版本
// 不删除工作区改动的代码,撤销commit,撤销git add .
$ git reset --hard 版本号
$ git reset --hard HEAD^ //回到上一个版本
// 删除工作区的代码,撤销commit,撤销git add . 回到上一次commit的状态
5、git pull 报错 refusing to merge unrelated histories
$ git pull origin master --allow-unrelated-histories
6、git pre -commit hook failed (add --no-verify to bypass)的问题
husky > pre-commit (node v8.9.4)
↓ Stashing changes... [skipped]
→ No partially staged files found...
❯ Running linters...
❯ Running tasks for src/**/*.{js,vue}
✖ eslint --fix
git add
....
....
husky > pre-commit hook failed (add --no-verify to bypass)
命令行已经提示了,add --no-verify to bypass
git commit -m "备注" --no-verify
7、fatal: unable to access 'https://git.aaa.bb/xxx/xxx.git/': Failed to connect to git.aaa.bb port 443: Operation timed out
执行git pull 时报错,看了下gitlab的项目地址是带端口号的
//修改远程仓库地址,加上对应的端口号
$ git remote set-url origin https://git.aaa.bb:端口号/xxx/xxx.git
8、git 更改本地和远程分支的名称
#1 将本地分支进行改名
git branch -m old_branch new_branch
#2 将远程分支的老分支删除
git push origin :old_branch
#3 将改名后的分支push到远程
git push origin new_branch
9、git stash
$ git stash [save message]
$ git stash list
$ git stash pop stash@{num} //只能恢复一次
$ git stash apply stash@{num} //可恢复多次
$ git stash drop stash@{num} //删除某个保存
$ git stash clear //删除所有保存
10、git config
//查看所有的配置信息,依次是系统级别、用户级别、仓库级别
git config -l
// 查看全局
git config --global -l
// 查看用户名邮箱
git config user.name
git config user.email
// 设置全局
git config --global user.name "Author Name"
git config --global user.email "Author Email"
// 设置当前项目库配置
git config user.name "Author Name"
git config user.email "Author Email"
//无需每次都输入密码
//输入密码后执行下面代码就可以了
git config --global credential.helper store
//修改密码
//如果账号密码有变动 用这个命令
git config --system --unset credential.helper
//重新输入账号密码 应该就能解决了
//如果用了第一个命令 还不能解决问题那么 用这个命令:
git config --global http.emptyAuth true
网友评论