基本操作
状态查看操作: git status (查看工作区、暂存区状态)
添加操作: git add [file name] (将工作区的“新建/修改”添加到暂存区)
提交操作: git commit -m “commit message” [file name] (将暂存区的内容提交到本地库)
查看日志:
-
git log (完整形式)
多屏显示控制方式:
空格向下翻页
b向上翻页
q退出
-
git log --pretty=oneline (每个版本以一行的形式显示)
-
git log --oneline (只显示版本号的后7位)
-
git reflog (显示到某个版本HEAD的次数)
前进后退: -
基于索引值操作
git reset --hard [索引值] -
使用^符号:只能后退
git reset --hard HEAD^ (一个^表示后退一步) -
使用~符号:只能后退
git reset --head HEAD~n (表示后退n步)
reset命令的三个参数对比
- –sort参数
仅仅在本地库移动指针 - –mixed参数
在本地库移动HEAD指针并重置暂存区 - –hard参数
在本地库移动HEAD指针、重置暂存区、重置工作区
删除文件并找回
前提:删除前,文件存在时的状态提交到了本地库。
git reset --hard[指针位置]
比较文件差异:
- git diff [文件名] (将工作区中的文件和暂存区进行比较)
- git diff [本地库中历史版本] [文件名] (将工作区中的文件和本地库历史记录进行比较)
分支操作
创建分支:
git branch [分支名]
查看分支:
git branch -v
切换分支:
git checkout [分支名]
合并分支:
- 第一步:切换到接受修改的分支上。
git checkout [分支名] - 第二步:执行merge命令。
git merge [要合并的分支名]
解决冲突:
- 第一步:编辑文件,删除特殊符号
- 第二步:把文件修改到满意的程度,保存退出
- 第三步:git add [文件名]
- 第四步:git commit -m “日志信息”
创建远程库地址别名:
git remote -v (查看当前所有远程地址别名)
git remote add [别名] [远程地址]
推送
git push [别名][分支名]
克隆
git clone [远程地址] (完整的把远程库下载到本地、创建origin远程地址别名、初始化本地库)
拉取
- pull = fetch + merge
- git fetch [远程库地址的别名][远程分支名]
- git merge [远程库地址别名/远程分支名]