首页 » 工作 » 方法 » 正文

Git 常用设置收集 9+

发布者:某某人
2018/12/10 浏览数(217) 分类:方法 暂无评论

本地分支改名

git branch -m old_branch new_branch # 本地分支改名
git push origin :old_branch         # 删除远程分支

pull 时用 rebase 替换默认的 merge

git config --global pull.rebase true

获取当前分支名称

git symbolic-ref --short -q HEAD
# 如果使用了 git-prompt 可以这样:
echo $(__git_ps1 "%s")

修改最近一次的 commit message

git commit --amend

修改历史记录中的 commit message

# 修改最近3条内的
git rebase -i HEAD~3
把你要改 message 的那条 commit 前的 pick 改为 edit 后 :wq
git commit --amend 并更新 message
git rebase --continue

修改默认的 commit 编辑器为 vim

git config --global core.editor vim
# nano 的保存方式:ctrl+x,y,enter

删除 git 历史记录中的大文件

# 1. 从历史提交中找出占用空间最大的5个文件
git rev-list --objects --all | grep "$(git verify-pack -v .git/objects/pack/*.idx | sort -k 3 -n | tail -5 | awk '{print$1}')"
# 2. 重写commit,删除这个大文件或目录
git filter-branch --force --index-filter 'git rm -rf --cached --ignore-unmatch big-file.jar' --prune-empty --tag-name-filter cat -- --all
# 3. 推送修改后的repo
git push origin master --force
# 4. 清理和回收空间
rm -rf .git/refs/original/
git reflog expire --expire=now --all
git gc --prune=now

这个技巧来自这里这里

删除远程的分支 dev

git push origin -d dev
# 或:
git push origin --delete dev

删除本地记录的程远已经不存了的分支

git remote prune origin

记住密码

git config --global credential.helper cache                  # 记住15分钟
git config --global credential.helper 'cache --timeout=3600' # 记住3600秒
git config --global credential.helper store                  # 一直记住

解决“fatal: Authentication failed for …”

git config --system --unset credential.helper
# win 下可能需要以管理员身份运行

Git 用户配置

# ~/.gitconfig
[user]
	name = Mr.User
	email = user@honzh.com
[alias]
br = branch
bd = branch -d
co = checkout
cb = checkout -b
ci = commit
cm = commit -m
df = diff
st = status
lg  = log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cd) %C(bold blue)<%an>%Creset' --abbrev-commit --date='format-local:%Y-%m-%d %H:%M:%S'
lg1 = log --pretty=format:'%C(green)%cd %Cred%h%Creset -%C(yellow)%d%Creset %s %C(bold blue)<%an>%Creset' --abbrev-commit --date='format-local:%Y-%m-%d %H:%M'
ls = log --stat
lp = log -p
last = log -1 HEAD
up = push
[core]
	ignorecase = false
[credential]
	helper = store

暂时木有评论啊,等您坐沙发呢!

发表评论

点击返回顶部
  1. 留言
  2. 联系方式