当前位置: 首页 > news >正文

Linux---git工具

目录

初步了解

基本原理

基本用法

安装git

拉取远端仓库

提交三板斧

1、添加到缓存区

2、提交到本地仓库

3、提交到远端

其他指令补充

多人协作管理

windows用户提交文件

Linux用户提交文件


初步了解

在Linux中,git是一个指令,可以帮助我们做好对项目的版本控制管理。

举个例子,假设我们手上有一个项目,随着时间的推移,这个项目要进行版本的更新迭代。这个时候,只要每次此项目代码发生更新,我们利用git指令将它同步到本地和远端仓库。这样,我们如果想迅速回退到哪一个版本,就会很快的实现。同时也管理好了这个项目整体的迭代过程。

基本原理

一个项目完成之后,首先是在我们的工作空间,在配置好了远端仓库的情况下,首先我们将它添加到暂存区,再从暂存区里面添加到本地仓库,其实这里添加到本地就是在本地已经对这个项目做好了一次管理,还可以将它提交到远端进行管理。

基本用法

安装git

yum install -y git #安装git指令,非root用户在前面加sudo

这里可以在命令行创建仓库,也可以直接在远端直接创建好。我们这里演示一下在远端创建好,然后在命令行操作。

远端仓库可以使用github/gitee,本人这里使用gitee。

拉取远端仓库

git clone https://gitee.com/yhxinhuo/test.git(复制好的网址) #拉取远端仓库

这样就ok了。

只需要将红框内容修改为你自己注册gitee的邮箱和账号名称即可。

拉取远端仓库之后在你的工作空间就会出现一个文件夹(名称为刚刚gitee创建的仓库名)。

进入这个仓库之后,.git隐藏目录就是本地仓库,在gitee上面的所有文件都被拷贝到了这里。

这里的.gitignore文件是专门过滤掉那些项目中的临时文件的,我们管理这个项目,只需要管理好这个项目的源文件、头文件、配置文件就可以了,不需要管理类似于.obj这样的临时文件。

写个测试代码提交说明一下步骤。进入这个仓库。

提交三板斧

1、添加到缓存区

git add code.c #将指定的code.c文件添加到缓存区
git add .      #将当前所有文件添加到缓存区

2、提交到本地仓库

git commit -m "提交信息" #将缓存区里面的文件提交到本地仓库

之后再执行以下git commit -m "提交信息"即可。

3、提交到远端

git push #将本地仓库与远端仓库进行同步

至此,提交代码的指令就这三个,这也将代码管理起来了,如果代码发生了改变,提交一下就行。

其他指令补充

git log               #查看历史提交记录
git status            #查看工作区和本地仓库目录文件的差别
git branch            #查看仓库分支
git pull              #拉取远程仓库与本地仓库保持一致
git reset 指定文件     #撤销git add 指定文件的操作
git rm -f 指定文件     #删除指定文件

如果是多人协作管理项目,每个人都需要先拉取一下远端仓库与本地保持一致,即git pull指令,然后再提交自己写的代码。

另外,删除仓库的话,需要在本地rm -rf删除即可,远端也直接删除就行。

多人协作管理

1、没有拉取的拉取一下远端仓库

2、git pull 同步远端与本地资源

3、三板斧

举个例子

windows用户提交文件

Linux用户提交文件

文章到此结束,如有问题或建议,欢迎评论区留言。

如有不足,还望大佬多多指正!!!

http://www.lryc.cn/news/409088.html

相关文章:

  • 【JavaScript】函数的动态传参
  • 从0到1,AI我来了- (4)AI图片识别的理论知识-II
  • 2024 Java 高分面试宝典 一站式搞定技术面
  • MongoDB - 聚合操作符 $eq、$gte、$in、$sum、$avg
  • C语言 | Leetcode C语言题解之第279题完全平方数
  • 在appium中,如何通过匹配图片来进行断言?
  • 昇思25天学习打卡营第21天|CV-Shufflenet图像分类
  • python 图片转文字、语音转文字、文字转语音保存音频并朗读
  • SSRF (服务端请求伪造)
  • SQL中的LEFT JOIN、RIGHT JOIN和INNER JOIN
  • [网鼎杯 2020 朱雀组]Nmap(详细解读版)
  • 【React】详解“最新”和“最热”切换与排序
  • BUUCTF [MRCTF2020]Ezpop
  • RV1126 Linux 系统,接外设,时好时坏(一)应该从哪些方面排查问题
  • Vue实现简单小案例
  • 【MATLAB APP】建立独立桌面APP
  • Spring的优缺点?
  • 第一百八十三节 Java IO教程 - Java目录事件、Java异步I/O
  • 【设计模式】(万字总结)深入理解Java中的创建型设计模式
  • 【全面讲解下Docker in Docker的原理与实践】
  • Android Settings增加多击事件,增加开发者模式打开难度
  • 【相机与图像】1. 相机模型的介绍:内参、外参、畸变参数
  • Linux内核netlink机制 - 用户空间和内核空间数据传输
  • Node.js自动化处理TOML文件
  • Spring boot 后端向前端发送日期时间发现少了8小时
  • MySQL数据库(基础篇)
  • ffmpeg ffplay.c 源码分析二:数据读取线程
  • 国科大作业考试资料《人工智能原理与算法》2024新编-第十三次作业整理
  • Netdevops入门之Telnetlib语法案例
  • 永辉“爆改”续命