#############
# 参考资料 #
#############
# 《廖雪峰的Git教程》
# https://www.liaoxuefeng.com/wiki/896043488029600
# 《阮一峰的Git原理入门》
# http://www.ruanyifeng.com/blog/2018/10/git-internals.html
###############
# 1.Git的简介 #
###############
#分布式版本控制系统
#1.1 安装Git
apt-get install git
#1.2 创建版本库
#初始化一个Git仓库
cd /home/zch/Git
mkdir learngit
cd learngit
git init #把learngit目录变成Git可以管理的仓库
#添加文件到Git仓库
#因为commit可以一次提交很多文件,所以你可以多次add不同的文件
git add readme.txt
git commit -m "wrote a readme file"
git config --global user.email "zhaochenghui1@huawei.com"
git config --global user.name "joeyzch"
###############
# 2.时光机穿梭 #
###############
#2.0 简介
git status #可以让我们时刻掌握仓库当前的状态
git diff readme.txt #看看具体修改了什么内容
git add readme.txt #知道了对readme.txt作了什么修改后,再把它提交到仓库就放心多了
git status #告诉我们将要被提交的修改包括readme.txt,下一步,就可以放心地提交了
git commit -m "add distributed"
git status #告诉我们当前没有需要提交的修改,而且,工作目录是干净的
#2.1 版本回退
#2.2 工作区和暂存区
#2.3 管理修改
#2.4 撤销修改
#2.5 删除文件
#############
# 3.远程仓库 #
#############
#3.0 简介
ssh-keygen -t rsa -C "zhaochenghui1@huawei.com" #创建SSH Key
cat /root/.ssh/id_rsa.pub
#3.1 添加远程库
git remote add origin git@github.com:zhaochenghui/learngit.git #在本地的learngit仓库下运行命令,注意远程库的名字就是origin
#由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
git push -u origin master #把本地库的所有内容推送到远程库上,实际上是把当前分支master推送到远程