本地库初始化 git init
设置签名
-
项目级别
git config user.name xxxxx
git config user.email xxxxx@xxxxx.com
位置 ./.git/cinfig -
系统用户级别
git config --global user.name xxxxx
git config --global user.email xxxxx@xxxxx.com
位置 ~/.gitconfig
状态查看 git status
查看工作区和暂存区状态
添加 git add 文件名
将工作区的“新建/修改”添加到暂存区
撤回到工作区 git rm --cached 文件名
提交 git commit -m "提交日志" 文件名
将暂存区内容提交到本地库
查看历史纪录 git log
多屏显示时, 空格向下翻页,b向上翻页,q退出
将日志显示为一行
- `git log --pretty=oneline` 显示所有哈希值
- `git log --oneline` 显示部分哈希值
- `git reflog` 移动到当前版本需要多少步
前进后退
- 基于索引值操作
git reset --hard 局部索引值
- 使用^符号,只能后退
git reset --hard HEAD^
一个表示一步,n个表示n步 - 使用~符号,只能后退
git reset --hard HEAD~n
后退n步
reset参数
- –soft 仅在本地库移动HEAD指针
- –mixed 在本地库移动HEAD指针,重置暂存区
- –hard 在本地库移动HEAD指针,重置暂存区,重置工作区
删除文件并召回
删除 rm 文件名
找回 前提是文件存在时的状态被提交到本地库 git reset --hard 指针位置
删除操作已提交到本地库,指针位置指向历史记录
删除操作未提交到本地库,指针位置使用HEAD
比较文件
git diff 文件名
将工作区中的文件与暂存区比较git diff 本地库历史版本 文件名
将工作区中的文件和本地库历史记录比较git diff
比较多个文件
分支管理
- 查看分支
git branch -v
- 创建分支
git branch 分支名
- 切换分支
git checkout 分支名
- 合并分支
- 切换到接受修改的分支(被合并,增加新内容的)上
git merge 有新内容的分支名
- 解决冲突
- 编辑文件,删除特殊符号
- 修改文件,保存退出
- 提交文件,
git add 文件名
git commit -m 日志信息
不带文件名
删除分支
- 删除本地分支
git branch -d 分支名称
- 强制删除本地分支
git branch -D 分支名称
- 删除远程分支
git push origin --delete 分支名称
删除本地仓库 find . -name ".git"|xargs rm -Rf