Git安装以及本地仓库基本操作
Git学习
1.git安装
- 官网下载:https://git-scm.com/
- 安装位置不要出现中文以及特殊符号(养成好习惯避免很多奇怪的错误,血和泪的教训),安装过程所有都是next。
- 安装完成后,在桌面使用右键出现了Git的选项即为安装成功。
2.git使用
2.1git工作流程
2.2本地仓库创建
- 首次使用需要进行全局配置:
- 桌面空白处点击鼠标右键,点击“Git bash Here”以打开Git命令窗口。
$ git config --global user.name "用户名"
$ git config --global user.email "邮箱地址"
注:如果后期需要关联GitHub,建议使用GitHub的用户名、邮箱。
- 验证是否绑定成功。
$ git config --global user.name
$ git config --global user.email
2.2.2 创建仓库
注:小白学习阶段请不要在已有项目上进行创建,否则造成一切后果自付/doge。
- 创建空仓库(空目录):新建文件夹即可也可以使用命令(再次强调,目录绝对地址都不要出现中文以及特殊符号)。
$ mkdir pro_git(目录名)
注:此处建议在非C盘的下一级目录下创建(在G盘的www文件夹下右键启动"Git bash Here")。
- 进入目录:
$ cd pro_git
2.2.3Git仓库初始化
- 初始化仓库在对应文件夹下,使用git init命令,初始化成功会在相应的目录下有一个".git"的隐藏文件夹。(不要随意操作此文件夹)
$ git init
2.3 git常用指令操作
- 查看当前状态:git status一开始目录中没有如何的内容会显示如下。这时我们需要添加项目至文件夹。
$ git status
#显示结果
On branch master
No commits yet
nothing to commit (create/copy files and use "git add" to track)
- 添加新文件"testgit.txt"
- 添加到缓冲区:git add 文件名:将文件从工作区添加至缓冲区。
$ git add 文件名 //添加单个文件
$ git add 文件名1 文件名2 文件名3 //添加多个文件
$ git add . //添加当前目录
- 再次使用git status命令,就会显示状态。
$ git add testgit.txt
$ git status
#显示结果
On branch master
No commits yet
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: testgit.txt
- 提交至版本库:git commit -m “注释内容”。
注:“注释可以使用中文”
$ git commit -m "新建测试文本"
#显示结果
[master (root-commit) 3c9aad2] 鏂板缓娴嬭瘯鏂囨湰
1 file changed, 1 insertion(+)
create mode 100644 testgit.txt
注:每次操作完内容都可以添加至缓存区并提交(写好注释),提交这些更新内容是为了更好的管理项目版本。
2.4 版本回退
2.4.1查看版本
方法一:
$ git log
commit de7a104022c0ddd8c7e168b43773a2a8c5bf5ef5 (HEAD -> master)
Author: 作者
Date: 时间
添加了文件index.php
commit 3c9aad292ce40fe093223a7631b7005b1fc9f6fe
Author: 作者
Date: 时间
新建测试文本
- commit后面为提交的编号这是关键,可以理解为版本ID。
- (HEAD -> master)为当前节点,也很关键起到定位作用。
方法二:(更加简洁)
$ git log --pretty=oneline
de7a104022c0ddd8c7e168b43773a2a8c5bf5ef5 (HEAD -> master) 添加了文件index.php
3c9aad292ce40fe093223a7631b7005b1fc9f6fe 新建测试文本
2.4.2回退版本
- 指令:git reset --hard 提交编号
- 回到 “新建测试文本” 的时候
$ git reset --hard 3c9aad292ce40fe093223a7631b7005b1fc9f6fe
HEAD is now at 3c9aad2 鏂板缓娴嬭瘯鏂囨湰
#当前文件夹只有测试文件了
$ ls
testgit.txt
注:回到“新建测试文本”的版本后再使用git log 时看不到“添加了文件index.php”版本的,这时我们需要查看历史操作。
2.4.3查看历史操作
- 指令: git reflog
$ git reflog
3c9aad2 (HEAD -> master) HEAD@{0}: reset: moving to 3c9aad292ce40fe093223a7631b7005b1fc9f6fe
de7a104 HEAD@{1}: commit: 添加了文件index.php
3c9aad2 (HEAD -> master) HEAD@{2}: commit (initial): 新建测试文本
- 回到 “添加了文件index.php”版本,再次使用命令:git reset --hard 提交编号 即可。
$ git reset --hard de7a104
HEAD is now at de7a104 娣诲姞浜嗘枃浠秈ndex.php
$ ls
index.php testgit.txt
小结
使用git可以很方便的进行版本控制,需要add提交至缓冲区commit提交至库,log查版本信息或reflog查历史操作,使用reset --hard 回到相应版本。
#配置用户名、邮箱
$ git config --global user.name "用户名"
$ git config --global user.email "邮箱地址"
#在想要建库的文件中,初始化库
$ git init
#查看当前状态
$ git status
#添加文件至缓冲区
$ git add 文件名
$ git add 文件名1 文件名2 文件名3 //添加多个文件
$ git add . //添加当前目录
#提交版本至库
$ git commit -m "新建测试文本"
#查看版本信息
$ git log
$ git log --pretty=oneline
#查看历史操作
git reflog
#回到编号相应的版本
git reset --hard 提交编号