![]() |
[其他] Git 的基本操作 |
Walker
管理员
L12
• 2018-09-07 • 回复 2 • 只看楼主
• 举报
|
1. 本地库初始化
1.1 命令
git init
1.2 注意
.git 目录中存放的是本地库相关的子目录和文件,不能删除也不要修改
2. 设置签名
2.1 形式
- 用户名:YoYing
- Email地址: yingxy123@163.com
2.2 作用
区分不同开发人员的身份
2.3 注意
这里设置的签名和登录远程库(代码托管中心)的账号、密码没有任何关系
2.4 两种方式
项目级别/仓库级别:仅在当前本地库范围内有效
- 命令
git config user.name YoYing
git config user.email yingxy123@163.com
系统用户级别:登录当前操作系统的用户范围
- 命令
git config --global user.name YoYing
git config --global user.email yingxy123@163.com
- 信息保存在用户根目录的 ~/.gitconfig 文件中
- 优先级:就近原则,项目级别优先于系统用户级别,必须有其中一个
3. 添加提交以及查看状态
3.1 添加操作
命令
git add [file name]
作用
将工作区的“新建/修改” 文件添加到暂存区
3.2 状态查看操作
命令
git status
作用
查看工作区、暂存区状态
3.3 提交操作
命令
git commit -m "commit message" [file name]
作用
将暂存区的内容提交到本地库
3.4 查看历史操作
命令 1
git log --pretty=oneline
命令 2
git reflog
4. 前进后退历史版本操作
4.1 本质
将 HEAD 指针进行移动
4.2 基于索引值操作
命令
git reset --hard [部分索引值]
4.3 基于 ^ 和 ~ 符号操作
说明
该符号操作只能后退,不能前进
命令
git reset --hard HEAD^^^^
git reset --hard HEAD~4
4.4 reset 的参数说明
--soft 参数
仅仅移动本地库的 HEAD 指针
--mixed 参数
在本地库移动 HEAD 指针,重置暂存区
--hard 参数
在本地库移动 HEAD 指针,重置暂存区,重置工作区
5. 删除文件与文件找回
5.1 删除文件
命令
rm aaa.txt
git add aaa.txt
git commit -m "delete new file"
找回命令
git reset --hard a5bfe5e
5.2 添加到暂存区的删除文件找回
命令(现在该删除文件在暂存区,还没有提交到本地库)
git add bb.txt
git commit -m "add bb.txt"
rm bb.txt
git add bb.txt
找回
git reset --hard HEAD
5.3 删除文件并找回
前提: 删除之前,文件存在时的状态已经提交到了本地库
操作:
git reset --hard [指针位置]
6. 比较文件
6.1 比较工作区和暂存区文件
命令
git diff [文件名]
说明
如果不指定文件名,表示比较多个文件
6.2 比较工作区和本地库历史文件
命令
git diff [本地库历史版本] [文件名]
说明
如果不指定文件,表示比较多个文件
7. 分支
7.1 什么是分支
- 在版本控制过程中,使用多条线同时推进多个任务
7.2 分支的好处
- 同时并行推进多个功能的开发,提高开发效率
- 各个分支在开发过程中,如果某一支开发失败,不会对其他分支有任何影响
7.3 创建分支
命令
git branch amq
7.4 查看分支
命令
git branch -v
7.5 切换分支
命令
git checkout amq
7.6 合并分支
切换到需要修改的分支上(被合并,增加新内容)
git checkout master
执行 merge 命令,将 amq 的修改的内容 merge 到 master 分支上
git merge amq
7.7 解决分支冲突
如果在不同的分支同时修改相同的文件,使用 merge 的时候会有冲突
删除上述特殊标记符,使用 add 命令说明已经解决冲突了
git add bb.txt
提交
git commit -m "merge success"