目录
1.Git简介
Git是最先进的分布式版本控制系统(每个人的电脑都是一个完整的版本库,无需联网。如何协作:A在自己电脑修改了文件A,B在自己电脑修改了文件A,AB之间只需把各自的修改推送给对方,即可查看对方的修改),能自动记录每次文件的改动,还可协作编辑。
Git用C语言开发的。
2.Git的安装
2.1 安装
(1)Linux的安装
#查看系统有没有安装Git
git
#安装
sudo apt-get install git
(2)在Mac OS X上安装Git
- 安装homebrew,然后通过homebrew安装Git,homebrew文档。
- AppStore安装Xcode,Xcode集成了Git(运行Xcode--菜单--“Xcode”->“Preferences”--“Downloads”--“Command Line Tools”--“Install”)
(3)在Windows安装Git
Git官网下载安装包,安装成果后,菜单--“Git”->“Git Bash”,说明安装成功。
设置你的name和email
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
#--global表示你这台机器上所有的Git仓库都会使用这个配置
2.2 创建版本库
版本库又名仓库(repository),可将其理解为一个目录。
#创建版本库
mkdir hxf #创建
cd hxf #进入
pwd #显示当前目录
#把创建的目录编程Git可以管理的仓库
git init
#注意:不可以随意修改这个目录的文件,否则改乱之后将会破坏Git仓库。
#如果目录种没有看到.git目录,则可能是被隐藏了
ls -ah
ps:版本控制系统可以告诉你每次的改动,但没法跟踪文件的变化,但没法跟踪文件的变化.
#案例:编写一个.txt文件,将其放到hxf目录下
Git is a version control system.
Git is free software.
#1.把文件添加到仓库
git add readme.txt
#2.把文件提交到仓库
git commit -m "wrote a readme file" #-m后面输入的是本次提交的说明
#ps:commit可以一次提交多个文件,如下所示:
git add file1.txt
git add file2.txt file3.txt
git commit -m "add 3 files."
3.Git版本回退、撤销、删除等
3.1 版本回退
Git每当文件修改到一定程度的时候,就可以“保存一个快照”,这个快照在Git中被称为commit
。一旦你把文件改乱了,或者误删了文件,可从最近的一个commit
恢复,然后继续工作,而不是把几个月的工作成果全部丢失。
#版本控制系统肯定有某个命令可以告诉我们历史记录,在Git中,我们用git log命令查看
git log
#git log命令显示从最近到最远的提交日志
#若感觉命令过多,可用此命令
git log --pretty=oneline
在Git中,用HEAD
表示当前版本,上一个版本就是HEAD^
,上上一个版本就是HEAD^^。
#把当前版本回退到上一个版本
git reset --hard HEAD^
##如果找不到是哪个版本了,只要命令窗口没关掉,可以找到commit的id(版本号只需写前几个即可,git会自动查找)
git reset --hard 1094a
#查看
cat hxf.txt
#找不到id后,可用git reflog查看id
git reflog
3.2 工作区和暂存区
工作区:在电脑里能看到的目录
Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master
,以及指向master
的一个指针叫HEAD
。
git add
实际上就是把文件修改添加到暂存区;
git commit
实际上就是把暂存区的所有内容提交到当前分支。
#案例,hxf.txt
#1.查看一下状态
git status
#2.git add
git add
git commit -m "understand how stage works"
3.3 Git管理
(1)管理修改
git add--git commit --调教修改
修改文件后,直接git commit 提交不会被修改
正确流程:第一次修改 -> git add
-> 第二次修改 -> git add</