1、Git本地操作
1)Git 的工作流程
2)Git工作区、暂存区和版本库
(1)工作区:就是你在电脑里能看到的目录。
(2)暂存区:英文叫 stage, 或 index。一般存放在 ".git目录下" 下的 index 文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。
(3)版本库:工作区有一个隐藏目录 .git,这个不算工作区,而是 Git 的版本库。
3)Git的安装和打开命令窗口
(1)从官网下载对应操作系统的git安装程序,Linux操作系统一般自带git
(2)在Windows安装好git后,在工作目录中右键点击Git Bash here
4)配置基本信息
(1)系统用户级别设置
①设置用户名
git config --global user.name "你的用户名"
②设置用户的邮箱
git config --global user.email "你的邮箱"
③系统用户级别用户名和邮箱可以在~/.gitconfig文件中查看
(2)项目级别/仓库设置
①设置用户名:
git config user.name "你的用户名"
②设置用户的邮箱:
git config user.email "你的邮箱"
③系统用户级别用户名和邮箱可以在.git/config文件中查看
(3)两种签名的优先级
5)在本地创建一个git仓库
(1)mkdir 仓库名
(2)cd test //进入目录
(3)git init //初始化,并生成.git目录(隐藏目录)
注意:仓库名和各目录名不要中文,避免一些编码上的错误
6)创建文件和提交文件到仓库
(1)touch 文件名 //创建文件
(2)git add 文件名 //将文件添加到暂存区
(3)git add 文件名1 文件名2 文件名3 //将多个文件添加到暂存区
(4)git add . //添加当前目录下的文件到缓存区,注意有空格在.前面
(5)git commit -m"注释" //提交到本地仓库
git status 查看缓存区情况,-s 显示简单信息
7)版本前进/回退
(1)查看版本,确定回退时刻
①git log //查看当前版本的提交历史
②git log --pretty=oneline //以一行的形式查看历史记录,建议用这种方式
③git log -- oneline //比上面的方式哈希值短
④git reflog //可以查看所有分支的所有操作记录(包括已经被删除的 commit 记录和 reset 的操作),还可以显示操作次数
(2)回退指令
①基于索引值操作【推荐】
git reset --hard [局部索引值] //可进可退
git reset --hard b1789a9 //回退到b1789a9版本
回退到删除操作时间点:无法使用git log,因为此时的
版本是删除之前的版本,不存在删除的历史记录
要用git reflog
②使用符号:只能后退,1个后退一步,n个后退n步
git reset --hard HEAD^^
③使用符号:只能后退,后面的数字是多少,就后退多少步
git reset --hard HEAD~2
④git reset --hard HEAD //工作区、暂存库对齐本地库(指针)
(3)reset 命令三个参数对比
①--soft【基本不用】
仅在本地库移动HEAD指针
git status 查看为绿色
②--mixed【基本不用】
在本地库移动HEAD指针
重置暂存区
git status 查看为红色
③--hard
在本地库移动HEAD指针
重置暂存区
重置工作区
8)删除/恢复仓库文件
(1)删除
rm -rf 文件名 通知要删除某文件
git rm 文件名 删除缓存区的该文件 //git add . 更好用
git commit -m"注释" 将仓库文件删除
(2)恢复被删除文件
①git reset --hard 72c0664 //恢复被删除的abc.txt
②git reset --hard HEAD //同步到当前指针,针对尚未提交本地库的删除
9)比较文件差异
10)分支的创建,合并,删除
(1)查看分支:git branch
git branch -v //查看分支详情
各分支按修改时间排序
(2)创建分支:git branch 分支名
(3)切换分支:git checkout 分支名
当前分支为绿色,且有小星星*
(4)合并分支
①首先切换到需要被修改的分支上,只能修改当前分支
②git merge 被合并分支名
(5)解决冲突
分支合并时,如果两个分支同一文件的同一位置被修改,将发生冲突。
①发生冲突
②手动修改文件
③完成修改后确认到本地库,即可完成合并。
④删除分支
git branch -d 分支名
注意:在删除分支时要退出该分支