【Linux】Git的简单使用

📝前言:

这篇文章我们来讲讲版本控制器Git,主要掌握一些简单的本地仓库与远端仓库之间的文件传输操作。

🎬个人简介:努力学习ing

📋个人专栏:Linux

🎀CSDN主页 愚润求学

🌄其他专栏:C++学习笔记C语言入门基础python入门基础C++刷题专栏


目录

一,什么是Git

版本控制系统可对软件开发过程中的文件或目录的修改历史进行记录(每次不是上传一份新的代码,而是会对代码的修改部分进行记录),以便在需要时查看更改记录、恢复到特定版本。具有去中心,分布式的特点。每个用户都可以拉取远端仓库,实现协作。

二,创建远端仓库并克隆到本地

1. 远端建立仓库

第一步:远端新建仓库:

从上依次往下:

  1. Repository name :仓库名字

  2. Description:对仓库的描述

  3. public:开源,private:私有

  4. README:描述项目的

  5. gitignore :用来过滤掉指定后缀的本地文件的(可以自己修改)

  6. Choose a license:选择开源许可证

2. 拉取远端仓库(git clone)

第二步:git clone + 远端仓库链接(如Https)

git clone 命令的工作机制:

当你运行 git clone https://github.com/tanrun0/test.git 命令时,Git 会执行以下操作:

然后第一次git clone需要输入用户名和密码

但是:

从 2021 年 8 月 13 日起,GitHub 不再支持使用账户密码进行身份验证。

解决方法:

使用个人访问令牌(Personal Access Token),变成用:用户名+令牌

个人访问令牌是 GitHub 推荐的替代密码进行身份验证的方式。操作步骤如下:

  1. 登录 GitHub 账户,点击右上角的头像,选择 Settings。
  2. 在左侧菜单中选择 Developer settings,然后选择 Personal access tokens,再点击 Generate new token。
  3. 根据需要选择令牌的权限范围,设置好过期时间后,点击 Generate token 生成令牌。
  4. 复制生成的令牌,当 git 提示输入密码时,粘贴该令牌即可。

clone完成:

连接超时

因为国内云服务器访问github有限制,如果出现连接超时的情况:

可以考虑修改hosts

参考文章:https://docs.shanhe.com/v6.1/compute/vm/faq/other_questions/domestic_to_github/

记录下ip地址:

先改Windows的hosts,以管理员身份打开记事本找到hosts更改。

然后,vim /etc/hosts修改文件,添加:ip地址 github.com,如:

三,上传本地仓库的文件

第一步:add

假设现在写好了三个文件:

命令格式:git add 文件名

如,执行git add test.c test2.c test3.h
git add操作是将文件添加到暂存区

使用git status可以查看暂存区状态:

第二步:commit

命令格式:git commit -m "本次提交的说明注释",把暂存区的文件一次性提交

执行:git commit -m "这是一个测试"

报错:

说不知道提交代码的作者,那就根据他的提示设置:

执行:

bash 复制代码
git config --global user.email "[email protected]"
git config --global user.name "Your Name"

将 "[email protected]" 替换为你实际使用的邮箱地址,将 "Your Name" 替换为你希望显示的用户名。

然后再执行git commit -m "这是一个测试",显示下面信息代表完成了

git commit 只是将本地的修改记录到了本地仓库 。此时远端仓库(并没有这些改动。需要执行 git push 命令,实现本地与远端的同步。

第三部push

命令格式:git push

然后输入用户名和令牌,完成同步

git log就可以查看提交日志

免密码提交

参考这篇文章:https://blog.csdn.net/camillezj/article/details/55103149

四,小插曲(重装系统后)

遇到SHH服务器拒绝密码:

换成ssh root@ 公网ip登陆

创建新用户用:
adduser 用户名


🌈我的分享也就到此结束啦🌈

要是我的分享也能对你的学习起到帮助,那简直是太酷啦!

若有不足,还请大家多多指正,我们一起学习交流!

📢公主,王子:点赞👍→收藏⭐→关注🔍

感谢大家的观看和支持!祝大家都能得偿所愿,天天开心!!!

相关推荐
皓月盈江23 分钟前
Linux电脑本机使用小皮面板集成环境开发调试WEB项目
linux·php·web开发·phpstudy·小皮面板·集成环境·www.xp.cn
深井冰水28 分钟前
mac M2能安装的虚拟机和linux系统系统
linux·macos
leoufung1 小时前
内核内存锁定机制与用户空间内存锁定的交互分析
linux·kernel
Sapphire~1 小时前
odoo-049 Pycharm 中 git stash 后有pyc 文件,如何删除pyc文件
ide·git·pycharm
菜菜why2 小时前
AutoDL租用服务器教程
服务器
IT专业服务商2 小时前
联想 SR550 服务器,配置 RAID 5教程!
运维·服务器·windows·microsoft·硬件架构
忧虑的乌龟蛋2 小时前
嵌入式Linux I2C驱动开发详解
linux·驱动开发·嵌入式·iic·i2c·读数据·写数据
I_Scholar3 小时前
OPENSSL-1.1.1的使用及注意事项
linux·ssl
Johny_Zhao3 小时前
K8S+nginx+MYSQL+TOMCAT高可用架构企业自建网站
linux·网络·mysql·nginx·网络安全·信息安全·tomcat·云计算·shell·yum源·系统运维·itsm
稳联技术4 小时前
Ethercat转Profinet网关如何用“协议翻译术“打通自动化产线任督二脉
linux·服务器·网络