【Linux】Git使用

一、Git简介

Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理很小或非常大的项目。

Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。

二、Git安装

        首先输入 git 命令,查看系统有没有安装Git,如果没有,根据提示【sudo apt-get install git】就可以直接完成Git的安装。

        旧版本的Debian或Ubuntu Linux,可能要把命令改为【sudo apt-get install git-core】,如果是其他Linux版本,可以直接通过源码安装。先从Git官网下载源码,然后解压,依次输入:

./config
make
sudo make install

三、本地项目上传到Github

        1、在本地创建一个版本库(即文件夹),该目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来可以“还原”;

mkdir learngit

        2、通过【git init 】命令将该目录变成Git可以管理的仓库(初始化一个Git仓库),此时当前目录下多了一个 .git 的目录,通过【ls -ah】命令可以看见该隐藏目录;

cd learngit
git init

        3、把项目复制到这个文件夹里面,再通过【git add】把项目添加到仓库;

git add 文件名

        4、再通过【git commit -m "注释内容"】把项目提交到本地仓库,如果出现Author identity unknown错误,按照提示输入命令即可;

        5、在用户主目录下,查看有没有.ssh目录,如果有,再看下该目录下有没有id_rsa和id_rsa.pub这两个文件,如果都有,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key,一直回车,使用默认值即可;

$ ssh-keygen -t rsa -C "youremail@example.com"

        6、登录GitHub,打开"Account " -> "settings" -> "SSH Keys" -> "Add SSH Key",填写任意Title,在Key文本框里粘贴id_rsa.pub文件的内容;        

        7、在Github上设置好SSH密钥后,新建一个远程仓库"Create a new repo",填写Repository name,其他保持默认设置,点击"Create repository"按钮;

        8、根据GitHub的提示,在本地的learngit仓库下运行命令【git remote add origin git@github.com:xxx/xxx.git】将本地仓库和远程仓库进行关联,此处注意替换成自己的GitHub账户名及远程仓库名;

        9、最后通过【git push -u origin master】命令将本地仓库的项目推送到远程仓库(也就是Github)上。

以后,只要本地做了提交,就可以通过命令:

$ git push origin master

把本地master分支的最新修改推送至GitHub,这样你就拥有了真正的分布式版本库!

注意:如果出现如下错误,是因为直接在github上在线修改了代码,或者是直接向某个库中添加文件,但是没有对本地库同步,接着想push上传到远程库,就会失败。

解决方法:因为远程库与本地库不一致造成的,那么把远程库同步到本地库即可。

1、提前防止发生这个警告如果之前没有在本地库中进行commit,那么直接通过pull拉取要上传的远程库即可;

git pull 远程库别名 master

2、之前已经commit了需要通过 --rebase 取消掉本地库中刚刚的commit。

git pull --rebase 远程库别名 master

出现Successfully rebased and updated refs/heads/master.即成功。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/100210.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Kafka 简介之(学习之路)

正文 一、简介 1.1 概述 Kafka是最初由Linkedin公司开发,是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/nginx日志、访问日志,消息服务…

原生JS-鼠标拖动

原生JS-鼠标拖动 通过鼠标的点击事件通过h5的属性 通过鼠标的点击事件 步骤: 1. 鼠标按下div。 2. 鼠标移动,div跟着移动 原生js,实现拖拽效果。1. 给被拖拽的div加上 onmousedown 鼠标【按下事件】。鼠标按下的时候,开始监听鼠标…

【Spring框架学习3】Spring Bean的作用域 及 生命周期

一、Spring Bean的作用域有哪些? Spring框架支持以下五种Bean的作用域: Singleton:这是默认的作用域,在每个Spring IoC容器中只有一个Bean的实例(IoC初始化后)。Spring 中的 bean 默认都是单例的,是对单例设计模式的…

cesium图标漂移分析与解决

漂移现象如下 什么是图标漂移? 随着视野改变,图标相对于地面发生了相对位置的变化 让人感觉到图标有飘忽不定的感觉 原因分析 图标是静止的,它的位置在世界坐标系中是绝对的、静止的。 漂移大部分的原因是: 透视关系发生了错…

新华三辅导笔记 2023/10/9-2023/10/13

新华三辅导笔记 一、需要用到的软件二、计算机网络概述1、计算机网络的定义和基本功能(1)什么是计算机网络(2)计算机网络的基本功能 2、(1)局域网、城域网和广域网(范围划分)&#x…

OpenCV防抖实践及代码解析笔记

视频防抖是指用于减少摄像机运动对最终视频的影响的一系列方法。摄像机的运动可以是平移(比如沿着x、y、z方向上的运动)或旋转(偏航、俯仰、翻滚)。 正如你在上面的图片中看到的,在欧几里得运动模型中,图像…

leetcode:190. 颠倒二进制位

一、题目: 函数原型: uint32_t reverseBits(uint32_t n) 解释:uint32是无符号int或short的别称,传入的参数是一个32位二进制串,返回值是该32位二进制串逆序后的十进制值 二、思路: 实际上并不需要真的去逆…

移动应用-Android-开发指南

Android-UI开发指南 Android Studio调试UI设计UI框架布局Layout文本框 android的活动Activity基本概念Activity的生命周期Activity栈创建Activity管理ActivityActivity间传递数据 FragmentAdapterRecyclerViewRecyclerView Adapter(适配器)事件setOnItem…

Can 通信-协议

概述 CAN 是 Controller Area Network 的缩写(以下称为 CAN),是 ISO国际标准化的串行通信协议。 在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统 被开发了出来。由于…

uniapp快速入门系列(3)- CSS技巧与布局

章节三:CSS技巧与布局 1. uniapp中的样式编写2. 常见布局技巧与实例解析2.1 水平居中布局2.2 垂直居中布局2.3 等高布局2.4 响应式布局 3. CSS动画与过渡效果 在uniapp中,我们使用CSS来设置页面的样式和布局。本章将介绍一些在uniapp中常用的CSS技巧和布…

IDEA的使用(一)代码模块的导入、快捷使用、自定义 (IntelliJ IDEA 2022.1.3版本)

目录 1. IDEA项目结构 2. 模块的导入操作 2.1 正规操作 2.2 取巧操作 2.3 出现乱码 2.4 模块改名 3. 代码模板的使用 后缀补全(Postfix Completion)、实时模板(Live Templates)菜单里面什么介绍都有,可以自学&a…

4.02 用户中心-上传头像功能开发

详细内容请看下面地址: 地址:http://www.gxcode.top/code

林沛满-TCP 是如何避免被发送方分片的?

TCP 可以避免被发送方分片,是因为它主动把数据分成小段再交给网络层。最大的分段大小称为 MSS(Maximum Segment Size),它相当于把 MTU 刨去 IP头和 TCP 头之后的大小,所以一个 MSS 恰好能装进一个 MTU 中。 图4 图 4 …

唐老师讲电赛

dc-dc电源布局要点

存档&改造【04】二维码操作入口设置细节自动刷新设置后的交互式网格内容的隐藏

因为数据库中没有数据无法查看设置效果,于是自己创建了个测试数据表,用来给demo测试 -- 二维码操作入口设置 create table JM_QR_CODE(QR_CODE_ID NUMBER generated as identity primary key,SYSTEM_ID NUMBER(20) not null,IS_ENAB…

iceberg简介004_iceberg和其他数据湖框架的对比---​​数据湖Apache Iceberg工作笔记0004

然后来看一下iceberg和其他数据湖框架的对比这里可以看到hudi支持的多一点对吧,但是 iceberg有自己的优势,并且他们都支持timeline 也就是时间旅行对吧. 然后这个图是显示了,数据湖三剑客的开源时间,以及火热程度,可以对比一下看看.

R语言R包详解——stringr包:字符处理

R语言 R语言R包详解——stringr包:字符处理 一切用法皆以说明书为准,想要了解该包,请多查阅说明书或者查看底层算法。 文章目录 R语言一、安装与加载R包二、函数简介三、函数详解3.1、str_c: 字符串拼接3.2、str_trim: 去掉字符串的空格和TA…

win1011安装MG-SOFT+MIB+Browser+v10b

文章目录 安装MG-SOFTSNMP服务配置安装MG-SOFT启动MIB-Browser以及错误解决MIB Browser使用 安装MG-SOFT win10和win11安装基本一样,所以参照下面的操作即可! SNMP服务配置 打开设置,应用和功能,可选功能,选择添加功…

java项目中git的.ignore文件设置

在Git中,ignore是用来指定Git应该忽略的故意不被追踪的文件。它并不影响已经被Git追踪的文件。我们可以通过.ignore文件在Git中指定要忽略的文件。 当我们执行git add命令时,Git会检查.gitignore文件,并自动忽略这些文件和目录。这样可以避免…