【git的概述】
git是一个代码协同管理软件,主要用来完成多人协同开发的时候管理项目
1.分布式和集中式的区别
分布式:么一个节点都保存完成的代码,没有统一的中央服务器,节点与节点之间互相下载并推送代码,列如git
集中式:代码是集中管理,每次完成的代码上传到中央管理器,然后再从中央管理器下载代码使用,列如svn
2.windows下的git下载方式
Windows官网下载: Git - Downloads
3.Linux下的git下载方式
通过如下命令完成下载
sudo apt-get install git
如果出现无法获得锁和无法锁定管理目录的情况,重启直到可以安装
【git的配置】
git的配置分为,所有用户、当前用户、当前项目
1.系统中所有用户都可以使用该配置
git config --system 配置信息
配置文件是:/etc/gitconfig
2.当前用户可使用该配置
git config --global配置信息
配置文件是:~/.gitconfig
3.当前项目可使用该配置
git config
配置文件是:当前项目下的 ./.git/config
4.具体的配置
用户名配置
git config --system user.name xxx
xxx为设置的用户名
这里由于权限不够加了sudo
邮箱配置
git config --system user.email xxx
xxx为设置的邮箱
配置编辑器
git config core.editor vim
依赖项目
查看当前所有配置信息
git config --list
【git的操作】
git主要的就是通过把工作区的代码先添加到暂存区,然后再把暂存区的代码添加到本地仓库,本地仓库则可以通过远程仓库来上传或者下载代码
1.git的基本操作
1.1初始化仓库
首先创建一个文件夹,然后再进入该文件夹执行如下命令即可初始化仓库
git init
1.2查看文件、分支状态
git status
1.3将文件提交到暂存区
git add 文件名
提交指定文件到暂存区
git add *
提交所有文件到暂存区
1.4将暂存区文件提交到仓库
git commit -m 提交说明
提交说明可以很清晰的了解文件提交时候的更改
如果文件提交到了本地仓库之后,再在工作区对文件进行修改的话,可以通过get status来判断是把工作区的文件覆盖到本地仓库,还是通过本地仓库的文件恢复工作区的文件
1.5查看commit日志
通过查看commit日志,可以查看是谁,邮箱是什么,在什么时候往本地仓库添加了什么,通过如下命令查看
git log
查看所有commit日志
git log --pretty=oneline
查看单行日志
1.6比较本地文件和仓库区别
git diff 文件名
由于刚才往1.c文件添加了内容并没有上传到本地仓库,所以会有差异
2.git的恢复操作
2.1从本地仓库恢复文件到工作区
git checkout 文件名
2.2丢弃工作区的修改
git checkout -- 文件名
丢弃工作区文件的修改,不会同步到本地仓库中
2.3本地仓库文件的移动和删除
git mv 源文件 目的目录
在本地仓库中将源文件移动目的目录中(本地也会移动)
git rm 文件名
在本地仓库中删除指定的文件(本地也会删除)
2.4回到本地仓库的上一个版本
git reset --hard HEAD^
^的个数决定回到上几个版本
2.5通过版本号恢复本地仓库
git reset --hard commit_id
commit_id就是提交后,通过git log 查看的长串数据前七位
2.6查看修改了几次版本
git reflog
3.标签管理(版本管理)
3.1什么是标签
在当前工作的位置添加快照,保存工作状态,一般用于版本的迭代
可以理解为给版本号取别名
3.2创建标签
git tag 标签名称
创建标签,默认是使用最新的版本号设置
git tag 标签名称 -m 提示信息
创建标签并设置提示信息
git tag 标签名称 commit_id
指定某一个commitID设置标签
3.3查看标签
git tag
查看当前标签
git show 标签
查看标签代表信息
3.4删除标签
git tag -d 标签名称
3.5查看指定标签信息
git show 标签
查看指定标签代表信息
3.6恢复到指定标签的位置
git reset --hard 标签名称
4.临时工作区
如果想要实现一个功能,但是现在有三种实现方法,为了确定哪个实现的方法更好,于是可以通过创建临时的工作区来分别判断,需要的留下,不需要删除
个人理解为,把当前工作区复制若干份,分别操作,筛选。修改本地文件后创建临时工作区,配套使用,可以把修改保存到临时工作区
4.1临时工作区创建
git stash
4.2临时工作区查看
git stash list
4.3使用指定的工作区
git stash apply stash@{编号}
4.4使用最新的临时工作区并删除
git stash pop
4.5删除指定的临时工作区
git stash drop stash@{编号}
4.6删除所有临时工作区
git stash clear
5.分支的操作
怎么理解分支,分支中权限最大的是maser,相当于决策每一个分节点上传上来的代码的可否。如果说一个大型的项目开发是一个分支,那么每个组长就是主分支延伸出去的分支,组长在往下就是组员的分支,每个人负责自己的任务
5.1查看当前分支
git branch
5.2创建一个分支
git checkout
5.3切换工作分支
git checkout <分支名称>
5.4.创建并切换到新的分支
git checkout -b <分支名称>
5.5将指定的分支合并到当前分支
git merge <分支名称>
5.6删除指定分支
git branch -d <分支名称>
【远程仓库】
1.什么是远程仓库
另一台主机上面的仓库,可以被其他主机访问
2.创建远程仓库
远程仓库的创建步骤如下:
1.创建文件夹
2.设置文件夹属主(默认即可)
3.进入文件夹,设置为共享仓库
git init --bare <项目名称> ,项目名称一般以.git结尾
4.设置本地仓库的属主(默认即可)
5.在本地仓库添加远程仓库
git remote add 仓库名称 用户名@IP地址:共享仓库的绝对路径 仓库名称可以使用任何名字,且必须在某个仓库下执行才可以建立和远程仓库的连接
3.远程仓库的删除
git remote rm 仓库名称
4.将本地仓库的文件推送到远程仓库
git push -u 远程仓库名称 要推送的分支
-u选项第一次添加才需要,后续不用
5.从远程仓库获取项目
创建一个03git文件夹,从远程仓库中获取项目
git clone 用户名@IP地址:共享仓库绝对路径
后续获取只需git pull
版权归原作者 西红柿訬番茄 所有, 如有侵权,请联系我们删除。