目录
基础操作
#创建gitTraining文件夹
mkdir gitTraining
#进入gitTraining文件夹
cd gitTraining
#请添加初始化本地Git仓库的命令
#********** Begin **********#
git init
#********** End **********#
#创建helloGit.txt文件
touch helloGit.txt
请添加提交helloGit.txt文件到暂存区的命令【git add helloGit.txt】
提交修改到本地仓库【git commit -m helloGit.txt】
#创建gitTraining目录
mkdir gitTraining
#进入gitTraining目录
cd gitTraining
#将gitTraining初始化为一个本地仓库
git init
#创建helloGit.txt
touch helloGit.txt
#请添加提交helloGit.txt文件到暂存区的命令
#********** Begin **********#
git add helloGit.txt
#********** End **********#
#请添加提交helloGit.txt至本地仓库的命令
#********** Begin **********#
git commit -m helloGit.txt
#********** End **********#
#添加远程仓库
git remote add git /tmp/educoder.git
#请在下面的Begin/End内填写语句,将本地master分支的修改推送到
#远程仓库的master分支
#********** Begin **********#
git push -u git master master
#-u参数的作用是,建立起本地master分支和远程master分支之间的对应关系,下一次如果再推送master分支,就可以忽略远程分支名了,
#********** End **********#
#请在下面的Begin/End内填写语句以拉取远程仓库git的master分支内容到本地
#********** Begin **********#
git pull git master:master -f
#也可以选择直接强制拉取,使用远程分支的修改,覆盖本地分支的修改。强制拉取需要用到-f参数
#********** End **********#
9-3Git入门之分支管理
git checkout -b gitTraining# 创建新分支的同时切换切换到一个新的分支
git branch -D develop #删除develop分支
第3关:删除远程分支
#删除远程develop分支,其中origin为远程仓库名
git push origin :develop
#删除远程develop分支,其中origin为远程主机名
git push origin --delete develop
第4关:本地分支合并
在具体使用中,如当前处于master分支,需要将develop分支合并到master分支,则具体的使用方式如下:
git merge develop
9-4Git入门之日志和版本回退
#直接丢弃工作区和暂存区的修改
git reset --hard HEAD
#暂存区内容保留,工作区修改丢弃
git reset --mixed HEAD
#暂存区和工作区内容都保留
git reset --soft HEAD
文件已添加至暂存区
文件已提交至分支
仓库中删除文件的一般过程
9-5Git入门之标签
== 用不同的标签来对应不同的版本==
第2关:推送指定标签
第4关:删除标签
9-6Git进阶之冲突处理、忽略文件
第1关:解决冲突
内容冲突
Git内容冲突产生的原因是,针对版本库中某个文件的某项内容,不同的操作对其做了不同的修改,以致于在合并不同的操作时发生矛盾。
树冲突
方法文件名修改造成的冲突,称为树冲突。比如,A用户把文件C改名为A,B用户把文件C改名为B,那么B合并这两个提交时,就会出现冲突:
第2关:强制操作
强制推送和普通推送的区别,就在于在末尾加上了-f参数
第3关:忽略文件
你在本地版本库里,放入了仅供本地测试用的文件,但是你并不想将其推送到远程仓库,而且不想每次都被提醒你本地有未提交文件的话,就需要用到Git忽略文件提醒的功能
9-7Git进阶之合并远程分支、rebase、储藏
第1关:合并远程分支
#切换到develop分支
git checkout develop
#获取远程develop分支的内容到本地
git pull origin develop:develop
#切换到master分支
git checkout master
#拉取远程master分支内容到本地
git pull origin master
#合并本地develop分支到master分支
git merge develop
#将合并后的分支推送到远程master分支
git push origin master:master
第2关:rebase操作(合并分支)
rebase基础操作
在解决rebase冲突的过程中,当解决完一个冲突的时候,使用如下命令后,才会出现下一个冲突:
git add -u
git rebase --continue
git rebase --abort
撤销rebase操作
第3关:储藏之保存
在开发过程中,当你的开发分支处于一个比较杂乱的状态,而你想转到其他分支上进行另外一些工作。但是,你不想提交进行了一半的工作,也不想将其撤销,这时就可以使用储藏操作。当你完成工作之后,再次回到该分支,可以恢复储藏的内容。然后,就会将之前保存的内容,再次恢复到工作区,就能继续进行开发。
储藏的基本操作
储藏分为保存和应用两个部分。保存就是将当前工作区的内容保存到一个栈中,而应用就是重新应用被保存的工作。
保存
git stash
重新应用
git stash apply
查看已经保存的工作
$ git stash list
9-8Git进阶之搭建Git服务器
第1关:Git服务器搭建
Git服务器必须搭建在Linux系统下,因此必须准备一台运行Linux系统的主机,这里我们推荐Ubuntu或者Debian系统。
安装并配置git
sudo apt-get install git 安装git服务
git config,即可完成git的配置
创建一个用户用来运行git服务的用户
创建证书登录
初始化git仓库
禁用shell登录
第2关:配置别名
设置别名
删除别名
查看别名
第3关:公共版本库的使用之码云、Github
本关任务:在码云上创建自己的项目。