Git学习第3天(2021-12-08)
19、Git-团队协作-团队内协作和跨团队协作。
在.git文件夹里面有个文件:HEAD
它里面的内容是代表当前的分支是哪一个。
文件夹refs:
里面记录的是某个分支对应的版本是哪一个。
其实就是指针在操作。
之前学习的都是在PC端进行控制。
如何利用Git进行团队合作呢?
这就需要用到代码托管中心了。
团队协作分为两种:
1、团队内协作
2、跨团队协作
20、Git-GitHub-创建远程库&创建别名
GitHub的官网:
登陆进来之后:
1、在github里面创建一个远程仓库。
点击这个+号
开始创建远程库:
1、写一个远程库的名字
【注意】:
我们本地已经有了一个git的项目叫做:GitDemo
所以我们建议在创建远程库的时候,名字也叫做GitDemo
2、选择你这个远程库是公共库还是私有库?
一般选择公共库。
公共库的读权限是完全开放的。之后就直接点击创建。
远程库创建好之后,就会出现两个链接。
1、HTTPS:
2、SHH链接。
先使用HTTPS:
复制HTTPS的链接:
创建远程库别名。
因为这个链接太长了,记不住。
给这个链接起一个别名。
将来对这个远程库进行代码推送或者拉取的时候,可以直接使用别名进行推送或者拉取。
在命令行里面查看当前git有哪些别名。
git remote -v
发现当前没有别名。
创建一个别名。
【建议】:
别名和库名GitDemo保持一致。
然后把刚才HTTPS的链接原封不动复制过来。
git remote add GitDemo https://github.com/RtlTengLong/GitDemo.git
创建好别名之后,再查看别名
git remote -v
之所以有两个。
是因为,以后,这个别名【GitDemo】既可以拉取,也可以推送。
现在就已经再GitHub上创建好远程库和别名了。
21、Git-GitHub-推送本地库到远程库
现在:
远程库和它的别名已经创建好了。
但是远程库里面现在还没有代码。
现在准备将本地库的代码推送到远程库里面去。
如何推送呢?
需要使用push命令
【注意】:
将本地库推送给远程库的时候,一定要指明哪个分支。
需要指定将本地库的哪个分支推送上去?
现在我们本地库GitDemo项目有两个分支:
1、matster
2、hot-fix
切回master分支:
git checkout master
查看当前分支master里面有哪些代码?
命令:ll
【关键】
将本地库的代码推送到远程仓库:
命令:
git push 【目的远程的仓库别名】 【将本地该项目的哪个分支推送到远程库呢?】
git push GitDemo master
刚才在GitHub上新建了一个仓库,并且给它娶了一个别名:GitDemo
master是这个项目的一个分支。需要将本地的master这个分支推送到别名为GitDemo仓库里面去。
【注意】:
1、当前这个命令行就是:
2、当前执行命令的分支就是master
【执行推送命令】:
【注意】:
这一步,因为需要将代码推送到国外的服务器,所以需要一点时间。需要对你的网络要求有点高。
执行之后,弹出一个小框:
提示我们登陆GitHub
选择方式1:使用浏览器的账号。
点击之后,浏览器会弹出一个窗口:
输入qq号
【注意】:
这里一定要多尝试几次。
显示推送成功的信息:
刷新刚才创建仓库的浏览器页面:
刷新之后:
发现本地库的代码hello.txt成功的push到远程库了。
点击hello.txt可以直接看到代码:
22、Git-GitHub-拉取远程库到本地库。
我们之前讲了讲本地库推送到远程库,现在讲一下,怎么拉取远程库到本地库。
1、先在网页端对代码进行了修改:
修改前:
修改之后:在最后一行写了很多个1
写Commit changes为111,然后再提交:
提交之后:
这个时候:
远程库里面的代码和本地库的代码是不一致的。
所以:
就需要将远程库的代码拉取到本地。
拉取和之前讲的推送是一样的。
都可以使用别名,也一定要指定分支。
命令:
git pull GitDemo master
从远程库拉取成功之后,先查看本地库的状态
git status
发现状态很干净,说明:
拉取动作会自动帮我们对更改的代码进行add和commit的操作。查看精简日志:
git reflog
查看文件
cat hello.txt
发现当时在远程库直接加的代码已经回来了。
本地库的代码和远程库的代码是一致的。
【注意】:
要时刻让你本地的代码一直是一个最新的状态。
23、Git-GitHub-克隆远程仓库到本地
1、D盘里面,GitSpace下面的东西:
2、在D盘下面创建一个文件夹:
Git-rtl
2、进入Git-rtl目录:
在这个目录下右键:
3、去拿到远程库那个仓库的HTTPS的链接。
克隆之前:
需要把电脑里面的凭据管理器的已经存在的GiuHub的账号密码删除掉。
因为Windows只能记住一个账号
我们要以Git-rtl的身份去克隆RaoTengLong的代码。
执行克隆命令:
git clone https://github.com/RtlTengLong/GitDemo.git
发现一个
【常识】:
我们已经将windows的账号密码删掉了,克隆无需账号密码也可以将远端的仓库的克隆下来。
这是因为,当时新建GitDemo仓库的时候,那个仓库就是设置的public。公共库的读权限是没有限制的。
任何人都可以克隆这个代码。
查看代码:ll
说明克隆干了三件事:
1、拉取代码
2、初始化本地库
3、创建别名
查看别名:
当前在Git-rtl里面
进入GitDemo里面
git remote -v