git的一些技巧
git
是一个免费开源分布式版本控制系统,可以高效处理从小型到超大型项目内容管理,本文会介绍一些 git
使用的技巧。
配置管理
配置账号信息测试:ssh -T git@github.com
#用于获取帮助信息
git help config
#查看配置信息
git config --list
#修改全局名字
git config --global user.name "username"
#修改邮箱
git config --global user.email "user@example.com"
#删除全局设置
git config --global --unset name
https协议下免密码推送代码
git clone https://github.com/username/rep.git
通过https方式克隆可能需要密码,解决办法:进入当前克隆的项目 .git
目录下,编辑 config
, 按照下面方式修改,你就可以推送代码不用输入密码了。
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
precomposeunicode = true
[remote "origin"]
- url = https://github.com/username/rep.git
+ url = https://用户名:密码@github.com/username/rep.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
撤销远程记录
git reset --hard HEAD~1 # 撤销一条记录
git push -f origin HEAD:master # 同步到远程仓库
放弃本地修改内容
# 如果有的修改以及加入暂存区的话
git reset --hard
# 还原所有修改,不会删除新增的文件
git checkout .
# 下面命令会删除新增的文件
git clean -xdf
通过存储暂存区stash,在删除暂存区的方法放弃本地修改。
git stash && git stash drop
回退到某一个版本
git reset --hard <hash>
# 例如 git reset --hard a3hd73r
# --hard代表丢弃工作区的修改,让工作区与版本代码一模一样,与之对应,
# --soft参数代表保留工作区的修改。
搜索 commit 历史记录
git log --grep=224
# 这条命令是查看含有 "224" 关键字的 git commit
回滚到某个commit提交
git revert HEAD~1 # 撤销一条记录 会弹出 commit 编辑
git push # 提交回滚
去掉某个commit
# 实质是新建了一个与原来完全相反的commit,抵消了原来commit的效果
git revert <commit-hash>