Linux | 分布式版本控制工具Git【版本管理 + 远程仓库克隆】-2

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Linux | 分布式版本控制工具Git【版本管理 + 远程仓库克隆】

四、如何在Linux上使用Git

我这里以Gitee为例为大家演示一下如果将自己的代码上传进行托管

1、创建仓库

image.png

image.png

image.png

  • 通过上面的一系列操作将仓库创建好之后我们就可以将其拷贝到我们的本地仓库中了。点击【克隆/下载】中的复制即可,通过HTTPS的形式将仓库的页面地址拷贝下来

image.png

2、将仓库克隆到本地

  • 然后我们来到Xshell中的命令行使用git clone + 仓库页面地址,这样就可以将远端仓库中的内容全部克隆过来,此时我们本地也相当于是拥有了这个【GitTest】的仓库

image.png

  • 接下去输入你gitee的用户名和密码之后就可以将这个仓库克隆你的本地了

image.png

  • 此时我们去【ls】一下就可以发现

image.png那这时候就有同学说了,我把仓库克隆下来了,那么这个仓库在哪里呢?它长什么样?

  • 此时我们只需在在这个git-test中执行一下【ls -la】即可,-l代表以列表的形式呈现当前目录下的内容;-a表示会显示隐藏的文件,也就是以.开头的文件
  • 那么我们就可以看到有一个【.git】的东西被显示出来,其实它就是我们从远端克隆下来的那个仓库,其实通俗点说它就是一个【目录/文件夹】

image.png

  • 其实这个仓库在我们Windows下也是可以看到的,只需要修改一下【查看】方式中【显示隐藏的文件、文件夹和驱动器】便可以看见这个.git的仓库了

image.pngimage.png

那这个仓库里面有哪些东西呢?我们来看看

  • 通过tree .git就可以看到这个目录中的所有内容了

image.png

  • 我们主要来说一下这个通过算法生成的随机二进制通过到Gitee上观看可以了解到它就是【本地修改记录的版本号】

image.pngimage.png

  • 然后的话就是【refs (references)】,一些这个仓库中有关我们个人的资料

image.png好,到这里,相信你对远程仓库克隆到本地以及对这个克隆过来的仓库有了一定的了解。其实对于Gitee来说就是【可视化地展现了我们的仓库】。接下去我们就要去使用一下这个仓库了👇

3、git三板斧

仓库克隆到本地之后,我们就可以将自己的代码托管到这个仓库中了

① git add

首先进行的就是【add】,也就是==将当前目录下所有文件添加到仓库里==

image.png

② git commit

接下去进行的就是【commit】,是提交的意思。是什么提交呢?是真正的提交。把我们修改的内容提交到本地仓库语法格式:git commit -m "日志"

  • 不过可以看到,似乎并没有提交成功的感觉,而是报出了一些异常的错误
  • 因为这是我们第一次提交内容到Gitee仓库中,但是人家还不认识你,也不会让你随便提交什么东西。所以只需要配置一下我们每次提交的【邮箱】和【用户名】即可

image.png

  • 然后我们再去【commit】一下就可以看到这两个文件就被提交到了本地仓库

image.png

那有同学问,那我要怎么查看我确实是将这些东西提交到仓库中了呢🧐

此时我们就可以使用到git log去查看我们提交的一些日志

  • 可以看到,里面就有本次【commit】修改后的版本号,而且还会显示出我们本次修改的日志。包括更多的还有上面配置的【用户名】和【邮箱】以及本次提交修改的时间,都是可以查询到的

image.png温馨提示:【日志】不要随便乱写,要写你本次修改了什么内容

  • 对于日志来说,是很重要的,因为记录了你本次修改仓库中的什么内容,方便以后可以快速查询到修改的时间和位置
  • 你之后在公司里写好代码后进行上传也是一样的,对于日志而言要好好写,因为之后可能你的领导会看你的代码、你的同事可能会看你的代码、你们公司的实习生也有可能会看到你的戴代码。此时他们就可以通过查看Gitee上面的提交记录或者是直接git log一下就可以搜索到你之前提交的记录,这个只要写了是==无法修改的==,所以我们对于每一次的代码修改都要认真记录日志

:dart:对于以上我们所做的【add】和【push】,其实已经完成了代码的托管,因为这个仓库就在我们本地,将代码放到这个仓库中,只要我们的服务器没坏掉,那都是可以找得到的 :dart:此时对应的就是张三前面在==为同学服务==时将他们的代码拷贝到本地电脑中的过程

③ git push

最后要进行的就是【push】,为何要push呢,其实也就是将本地仓库中保存的内容推送到远程仓库,让本地仓库和远端仓库保持一致

  • 刚才说到过,对于本地的仓库虽然可以起到一个永久的保存,但是难免会出现突发事故导致本地机器故障,此时就找不到之前写的代码了【当然你也可以使用U盘保存,不过U盘也是有使用年限的,不可以一直用过去】
  • 但是对虚拟的云端就会一直存在,不会丢失,所以我们可以将本地仓库中的内容进行一个推送

image.png

  • 不过若是你第一次进行git push的话,就出现上面这样的警告提示⚠这点的话是由于git push没有指定分支,只有当前分支会被 push 到你使用 git pull 获取的代码。

此时运行一下上面我框出的两句git config –global push.default matching 或: git config –global push.default simple。之后再去【git push】的时候就不会出现类似的问题了

  • 然后我们再去【git push】一下就可以发现不会出现像刚才那样的问题了,那也就推送成功了( •̀ ω •́ )

image.png

  • 通过来到Gitee上的远程仓库中可以看到我们刚才从本地仓库【push】上来的内容,这也就实现了==本地仓库和远端仓库保持一致==

https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/87c729870d1842ba9bb0e5c0df6428b8~tplv-k3u1fbpfcp-zoom-in-crop-mark:1512:0:0:0.awebp

4、有关git的其他指令

讲完了基本的git三板斧后,我们再来说说有关Linux下git的其他指令操作

  • 删除仓库中的文件 —— git rm 文件名
  • 查看本地和远端之间同步的状态 —— git status
  • 删除本地仓库 —— git .git rm

  • 首先我们来看看如何去删除仓库中的文件

image.png

  • 在删除掉这个文件之后我们再来看看这个本地仓库和远程仓库的状态

image.png

  • 所有的操作都展示完了,我们就将这个本地仓库删除吧!
  • 可以看到,在删除完后再去git status查看状态的话就会检测出来本地的并不是一个git仓库(repository)

image.png

除了删除本地仓库,在Gitee上创建的远程仓库也是可以删除的

  • 首先点击【管理】

image.png

  • 点击左侧菜单栏的【删除仓库】

image.png

  • 根据提示操作即可,输入内容

image.png

  • 最后再进行一下密码验证就可以删除成功了

image.png

  • 此时返回Gitee的大厅就可以看到我们删除仓库的记录了

image.png

五、总结与提炼

最后来总结一下本文所学习的内容

  • 首先我们介绍了有关【git】的相关知识,知道了它是由Linux之父【Linus Torvalds】在迫于某些需求的时候创建的,git是一款版本控制和多人协作的软件
  • 然后我们便说到了有关git的【版本控制】,因为网上大多数的文章都讲解了非常深奥难懂,于是我就使用到一些生活中的小案例来帮助大家理解,不过可不要真的和产品经理吵架哦,那就会很麻烦了~
  • 最后呢我们就说到了如何在Linux上去使用git,教了大家如何在Gitee上创建仓库并且将仓库克隆到本地。然后就可以使用git三板斧将本地的代码/文件托管到本地仓库进行管理了,但是本地仓库可能会存在风险,所以我们就可以使用第三板斧【push】将本地仓库中的内容推送到远端仓库,实现了一个云端备份

以上就是本文要介绍的所有内容,感谢您的观看

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
4月前
|
Linux 开发工具
7种比较Linux中文本文件的最佳工具
7种比较Linux中文本文件的最佳工具
7种比较Linux中文本文件的最佳工具
|
2月前
|
Linux 数据安全/隐私保护 iOS开发
推荐Linux环境下效能优良的双向文件同步工具
综合上述条件,对于Linux环境下的双向文件同步需求,Unison 和 Syncthing 是两个非常出色的选择。它们都有良好的社区支持和文档资源,适用于不同规模的环境,从个人使用到商业部署。Unison 特别适合那些需要手动干预同步过程、需要处理文件冲突解决的场景。而 Syncthing 更加现代化,适合需要自动、实时的数据同步与备份的环境。对于选择哪一个,这将取决于个人的使用场景和具体需求。
195 16
|
4月前
|
Ubuntu 搜索推荐 Linux
详解Ubuntu的strings与grep命令:Linux开发的实用工具。
这就是Ubuntu中的strings和grep命令,透明且强大。我希望你喜欢这个神奇的世界,并能在你的Linux开发旅程上,通过它们找到你的方向。记住,你的电脑是你的舞台,在上面你可以做任何你想做的事,只要你敢于尝试。
245 32
|
3月前
|
Linux 开发工具 git
解决 Linux git push 成功后(但没有出现绿点)的问题
最近学习使用Git,发现有时候在Linux下提交自己的小绿点并没有增加,单在仓库中却可以看到提交的代码。看着连续的绿点中出现几个零零散散的灰点,着实让一个强迫症患者十分难受。接下来分享以下我所知道的问题。
64 0
|
5月前
|
安全 Linux 网络安全
在Linux(CentOS和AWS)上安装更新的git2的方法并配置github-ssh
经过以上这些步骤,你现在就能在GitHub上顺利往返,如同海洋中的航海者自由驰骋。欢迎你加入码农的世界,享受这编程的乐趣吧!
184 10
|
2月前
|
监控 Linux 网络安全
Linux命令大全:从入门到精通
日常使用的linux命令整理
580 15
|
3月前
|
Linux 网络安全 数据安全/隐私保护
使用Linux系统的mount命令挂载远程服务器的文件夹。
如此一来,你就完成了一次从你的Linux发车站到远程服务器文件夹的有趣旅行。在这个技术之旅中,你既探索了新地方,也学到了如何桥接不同系统之间的距离。
342 21
|
3月前
|
JSON 自然语言处理 Linux
linux命令—tree
tree是一款强大的Linux命令行工具,用于以树状结构递归展示目录和文件,直观呈现层级关系。支持多种功能,如过滤、排序、权限显示及格式化输出等。安装方法因系统而异常用场景包括:基础用法(显示当前或指定目录结构)、核心参数应用(如层级控制-L、隐藏文件显示-a、完整路径输出-f)以及进阶操作(如磁盘空间分析--du、结合grep过滤内容、生成JSON格式列表-J等)。此外,还可生成网站目录结构图并导出为HTML文件。注意事项:使用Tab键补全路径避免错误;超大目录建议限制遍历层数;脚本中推荐禁用统计信息以优化性能。更多详情可查阅手册mantree。
linux命令—tree