1.git的介绍及其优势
Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理,是目前使用范围最广的版本管理工具。
我们为什么要学习git版本管理工具?
-
可以完整的记录项目代码变化的过程 : 人、时间、物、事
-
可以备份每一个变化过程的代码版本
-
查询历史记录
-
复原变更
-
比较差异
-
-
多人协同开发
- 分支合并
- 克隆提交
2.git安装
-
windows系统安装Git bash
Git 官网:https://git-scm.com/
-
测试
git --version
这样就是安装成功了
安装成功之后,在桌面处右击,可以看到:
Git Bash Here,就可以开始使用啦
3.git的相关设置及区域介绍
1.git 设置
由于git是分布式管理工具,需要输入用户名和邮箱作为标识,因此,在命令行输入下列的命令:
git config --global user.name 'zhangsan'
git config --global user.email 'your email'
**PS:**注意git config –global参数,表示你这台机器上所有的Git仓库都会使用这个配置,
2.git 的区域介绍
4.git的基本使用
git安装成功之后,来看看如何使用吧
1.这里先列举一些常见的shell命令
pwd | 获取当前所在路径 |
---|---|
ls -la | 显示所有文件,包括隐藏的文件 |
cd | 切换文件夹 cd . cd … |
mkdir | 创建文件夹 |
touch | 创建文件 |
rm | 删除 |
clear | 清空 |
2.git基础使用
1.创建版本库
版本库就是我们所说的“仓库”,英文名repository,通俗来说就是一个目录,这个目录里面的所有文件都可以被Git管理,文件的修改,删除Git都能跟踪,
以便任何时刻都可以追踪历史,或者在将来某个时刻还可以将文件”还原”。
下面是在桌面下,创建一个名为test的版本库:
cd desktop
mkdir test
2. git基本使用
1》要添加文件到版本库,首先需要将这个目录变为git可以管理的仓库,命令如下:
cd test
git init
2》将创建的文件添加到暂存区
touch 1.txt //此时,文件只是被创建,未加入缓存区
git add 1.txt //加入缓存区后,文件就可以被追踪到了
若要添加所有文件
git add .
3》 查看文件是否都已被追踪
git status //检查当前文件状态,非常常用
4》查看文件是否被修改,仍然是git status
查看文件修改的内容是什么
git diff
5》git提交
git commit -m '此次提交的描述'
//例:git commit -m 'first commit'
注意:提交时需要每次都输入账号和密码,下面给出ssh公钥的配置方法
配置完成后,就不用每次都输入账号密码啦!
6》查看git提交版本的历史记录
git log
//历史记录以一行显示
git log --oneline
7.版本回退
//回退到上一个版本
git reset --hard HEAD^
//回退到上上一个版本
git reset --hard HEAD^^
//有几个^,就回退到哪个版本
但这种方法有些繁琐,我们可以采取哈希值的方式回退
每一次commit,都会生成一个hash值
使用hash值回退:
git reset --hard [想要回退到的版本的hash值]
但是,使用 reset --hard回退也有弊端:回退到前面的版本之后,后面的版本就没有辽,
所以有更好的办法
git checkout [hash值] -- .
3.git 进阶
1.分支
什么是分支?
仓库进行第一次提交时,生成分支master,
查看分支
//使用 git branch 查看当前分支
git branch
创建分支
git branch [分支名称] //此时新分支就拷贝好了
切换分支
git checkout [分支名称]
同时创建并切换到创建的分支
git checkout -b [分支名称]
删除分支
git branch -d [分支名称]
合并分支
git merge [要合并的分支名称]
合并时,修改了同一处就产生了冲突
查看冲突原因
git status
先解决冲突,再合并提交
4. 远程仓库
1.添加远程仓库
$ git remote add orign git@server-name:path/repo-name.git //远程仓库名默认为origin
2.查看当前有哪些远程仓库
git remote -v
3.把本地内容push进远程仓库
//第一次推送
git push -u orign master
//之后
git push
4.从远程仓库克隆内容
git clone [远程仓库地址]
5. 在本地抓取远程仓库新的提交
git pull
6. 从本地推送分支
git push orign [分支名称]
7.在本地创建和远程分支对应的分支
$ git checkout -b <branch> origin/<branch>
8.建立本地分支和远程分支的关联
$ git branch --set-upstream <branch> origin/<branch>
或者
$ git branch --track origin/branch_name
//将当前所在分支设置为远程某分支的跟踪分支
9. 从本地推送分支
git push orign [分支名称]
10.在本地创建和远程分支对应的分支
$ git checkout -b <branch> origin/<branch>
11.建立本地分支和远程分支的关联
$ git branch --set-upstream <branch> origin/<branch>