web项目 day01(二)

版本管理工具之Git

Git是什么?

Git是目前世界上最先进的分布式版本控制系统(没有之一)。

Linux Ubuntu安装Git

sudo apt install git

CVS及SVN都是集中式的(中心化)版本控制系统,而Git是分布式(去中心化)版本控制系统,

集中式和分布式版本控制系统有什么区别呢?

集中式版本控制系统

版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器。中央服务器就好比是一个图书馆,你要改一本书,必须先从图书馆借出来,然后回到家自己改,改完了,再放回图书馆。

缺点:

集中式版本控制系统最大的毛病就是必须联网才能工作,如果在局域网内还好,带宽够大,速度够快,可如果在互联网上,遇到网速慢的话,可能提交一个10M的文件就需要5分钟,这还不得把人给憋死啊。

分布式版本控制系统

分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样,你工作的时候,就不需要联网了,因为版本库就在你自己的电脑上。既然每个人电脑上都有一个完整的版本库,那多个人如何协作呢?比方说你在自己电脑上改了文件A,你的同事也在他的电脑上改了文件A,这时,你们俩之间只需在有网络的时候把各自的修改推送给对方,就可以互相看到对方的修改了。

优点:

1、分布式版本控制系统的安全性要高很多,因为每个人电脑里都有完整的版本库,某一个人的电脑坏掉了不要紧,随便从其他人那里复制一个就可以了。而集中式版本控制系统的中央服务器要是出了问题,所有人都没法干活了。

2、Git极其强大的分支管理

注意:分布式版本控制系统通常也有一台充当“中央服务器”的电脑,但这个服务器的作用仅仅是用来方便“交换”大家的修改,没有它大家也一样干活,只是交换修改不方便而已。

Git 命令

在这里插入图片描述
init : 在本地创建⼀个新的库
clone : 从服务器克隆代码到本地 (将所有代码下载)
status : 查看当前代码库的状态
add : 将本地⽂件添加到暂存区
commit : 将代码提交到本地仓库
remote : 远程仓库管理
rm : 删除
push : 将本地代码推送到远程仓库
pull : 将远程仓库的代码拉取到本地 (只更新与本地不⼀样的代码)
log : 查看提交历史
branch : 分⽀管理
checkout : 切换分⽀ / 代码回滚 / 代码还原
diff : 差异对⽐
merge : 合并分⽀
.gitignore : ⼀个特殊⽂件, ⽤来记录需要忽略哪些⽂件
ssh-key 的使⽤

使用步骤:

  1. init : 在本地创建⼀个新的库
    在这里插入图片描述
    一开始目录下为空,使用命令后,该目录下出现了一个隐藏文件,这就是在该文件夹下创建了一个新的git仓库,此时这个git仓库为空

  2. status : 查看当前代码库的状态
    在这里插入图片描述
    此时该git仓库为空
    创建一个aaa .py文件,然后再查看当前代码库的状态
    在这里插入图片描述
    git是一个很友好的软件,会提示一些命令,它提示可以用 git add 的命令将文件提交到暂存区中去

  3. add : 将本地⽂件添加到暂存区
    在这里插入图片描述
    这里 git add . 是将该目录下所有的未被跟踪的文件都提交到暂存区中,这里只有一个aaa .py文件,所以只提交了一个文件,也可以使用 git add aaa .py 提交文件

  4. rm : 删除
    上面提示了一个命令,git rm – cached < file >表示从暂存区中删除,如果没有加上 – cached ,那就是从git库中删除

在这里插入图片描述
可以发现暂存区中就没有aaa.py文件了,但是git会提醒你可以添加目录下的aaa.py文件到暂存区,将该文件添加到暂存区,然后使用新的命令,将暂存区的文件提交到本地git库

  1. commit : 将代码提交到本地仓库
    commit - m " xxxx" 表示对此次提交添加日志,m的意思是message,可以理解为添加注释

如果以前没有用过git,第一次提交会失败
在这里插入图片描述
提示了两行代码,就是要告诉git你是谁
只要把引号里的内容改成自己的邮箱账号和自己的名字就行了
在这里插入图片描述
再运行提交的命令,就提交到本地仓库了,此时暂存区就为空了
在这里插入图片描述

  1. log : 查看提交历史
    在这里插入图片描述
    也叫查看日志,提交了一条记录
    修改aaa.py文件,添加一个函数,然后在提交到本地git仓库
    编辑aaa.py文件,使用命令 vim
    添加到本地仓库
    在这里插入图片描述

  2. 远程仓库
    这里远程仓库连接的是Github,如果没有用过,可以参考该篇文章
    https://blog.csdn.net/qq_44614026/article/details/96018128

1)首先在GitHub上创建一个空仓库
在这里插入图片描述
在这里插入图片描述
2)创建后是这样一个界面
因为在本地已经创建了仓库,所以使用第二栏
在这里插入图片描述
3)在Ubuntu终端输入代码

git remote add origin https://github.com/dzlnzwyyhy/test.git

输完该代码不会有任何的提示
其实在config文件中作了配置的修改
可用代码查看

 vim .git/config

在这里插入图片描述
可以看一下.git目录下的文件
在这里插入图片描述
config是git的配置文件,可以用vim手动修改;
objects,提交代码的内容,都在该文件下

其他不多做了解,现在已经和远程仓库建立了连接,接下来就是将代码推送到远程仓库

  1. 将代码推送到远程仓库
    使用命令
git push -u origin master

可能第一次需要输入GitHub的账号名称和密码
在这里插入图片描述
查看GitHub,可以发现代码文件就传过来了
在这里插入图片描述
顺便可以查看一下config文件

vim .git/config

在这里插入图片描述
多出几行代码,这个就是提交的配置

  1. pull : 将远程仓库的代码拉取到本地 (只更新与本地不⼀样的代码)
    现在GitHub上的远程仓库只有一个aaa .py文件,
    在这里插入图片描述
    可以多拆创建一个Readme文件,在这里插入图片描述
    然后,使用git pull 命令将远程仓库的文件拉下来
    在这里插入图片描述
    这样,就多出来一个Readme文件
    查看一下日志,这是远程仓库的日志,所以我们从远程仓库拉文件的同时,也能将远程仓库的日志拉下来
    在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值