前言
本文记录一些在开发上常用的Git命令。
git查看命令帮助文档
1 | git help [命令] |
本地库初始化
1 | # 在本目录下创建一个Git仓库 |
执行该命令后会在当前文件夹内生成一个.git 目录。
注意:.git 目录中存放的是本地库相关的子目录和文件,不要删除,也不要胡乱修改。
设置签名信息
项目/仓库级别签名
1 | git config user.name user_name |
信息保存位置:./.git/config 文件。
系统用户级别签名
1 | git config --global user.name user_name |
信息保存位置:~/.gitconfig 文件。
查看工作区、暂存区状态
1 | git status |
将工作区的“新建/修改”添加到暂存区
1 | # 添加指定文件到暂存区 |
将暂存区的内容提交到本地库
1 | # 将暂存区的内容提交到本地库 |
查看历史记录
1 | git log |
多屏显示控制方式:
space
向下翻页,
b
向上翻页,
q
退出。
其他查看历史的方式:
1 | # 一行显示 |
回退版本
基于索引值操作[推荐]
1 | git reset --hard [局部索引值] |
使用^符号:只能后退
1 | git reset --hard HEAD^ |
注:一个^表示后退一步,n 个表示后退 n 步。
使用~符号:只能后退
1 | git reset --hard HEAD~n |
注:表示后退 n 步。
reset命令三个参数对比
--soft
: 仅仅在本地库移动 HEAD 指针。
--mixed
: 在本地库移动 HEAD 指针,重置暂存区。
--hard
: 在本地库移动 HEAD 指针,重置暂存区,重置工作区。
比较文件差异
1 | # 将工作区中的文件和暂存区进行比较 |
不带文件名比较多个文件。
分支
查看所有分支
1 | # 列出所有本地分支 |
创建分支
1 | # 创建一个分支,但依然停留在当前分支 |
切换分支
1 | git checkout [分支名] |
合并分支
第一步:切换到接受修改的分支(被合并,增加新内容)上,
1 | git checkout [被合并分支名] |
第二步:执行 merge 命令,
1 | git merge [有新内容分支名] |
远程仓库
查看所有远程仓库
查看当前所有远程地址别名:
1 | git remote -v |
添加远程仓库
1 | git remote add [别名] [远程地址] |
推送到远程仓库
1 | git push [别名] [分支名] |
克隆远程仓库
1 | git clone [远程地址] |