通过git进行本地项目代码备份与版本控制

news/2024/9/18 3:49:45/文章来源:https://www.cnblogs.com/k33t/p/18409149

在本地进行项目开发时,由于代码需要进行多次迭代,因此备份代码是不可缺少的。因此使用版本控制系统来进行代码备份是很有必要的。本文将介绍有关git配置gitee以及github的相关内容,并对一些问题做出相应解释。

1.git工具

1.1 git介绍

Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。git可以在多种操作系统中安装。通过git可以在本地新建仓库并与远端仓库进行连接。git在本地的工作流程分为工作区 暂存区 版本库,通过这三部分可以对项目进行很好的版本控制与代码迭代。

1.2 git安装

windows安装教程推荐[git详细安装教程]
(https://blog.csdn.net/mukes/article/details/115693833 "git详细安装教程")这大概是我见过最详细的。

macOS如果安装 Homebrew,可以通过以下命令来安装:

brew install git

也可以前往Git官网下载 macOS 版本的安装包并按照说明进行安装。

Linux通过对应的安装包命令进行安装即可,例如:

sudo apt install git -y

1.3 git的简单使用

git可以通过命令行来进行使用,也可以使用类似Github desktop Git GUI这样的图形化工具来进行使用,推荐先了解了解git的命令再去使用图形化工具,这样可以加深对分布式版本控制系统的理解。git的使用过程不是本文的重点,因此不在此过多赘述,详细的内容推荐通过菜鸟教程网站以及b站相关视频进行学习。
简单常用git命令:

  • git clone repo
  • git add .
  • git commit -m 'information'
  • git push origin master

2.git配置github和gitee

2.1 设置全局用户名和邮箱

$ git config --global user.name  "name"//用户名
$ git config --global user.email "xxx@xxx.com"//邮箱

这里的用户名和邮箱就是你GitHub的,好像也可以不同,不过提交的时候信息可能会出问题

2.2 创建ssh key

在git bash里面输入如下命令:
$ ssh-keygen -t rsa -C "xxx@xxx.com"
邮箱还是对应的上面的邮箱,输入命令后需要连续三次回车,这样可以设置免ssh密码登录

2.3 在GitHub里面绑定ssh key

上面生成的ssh密钥可以在users/用户名/.ssh文件夹里面找到,点击资源管理器上面的查看显示隐藏文件就可以看到.ssh文件夹了。
复制id_rsa.pub里面的内容,打开GitHub,在Account settings页面选择SSH Keys,添加New ssh keys,名称随意,将复制的公钥内容粘贴进去。

2.4 验证

输入如下命令验证:
$ ssh -T git@github.com
出现提示,输入yes,然后底下出现欢迎信息,即为成功。

2.5 gitee配置

上面介绍的是github的配置,其实gitee的配置也是相似的,这里贴一下官方的教程:gitee配置ssh key

3.git工作流程

3.1 新建项目仓库

首先在你所在的项目的文件下初始化:git init
然后提交到暂存区git add .
然后提交到版本控制区git commit -m "information"
关联本地仓库与远程仓库(可以在仓库页面看到仓库地址,前缀是ssh不是https):
git remote add origin https://github.com/xu-xiaoya/Elegent.git
通过git remote -v查看关联的远程仓库
最后就可以推送了,由于新建的远程仓库是空的,所以要加上-u这个参数
git push -u origin master
之后仓库不是空的,就不用加上-u
git push origin master(这里默认的是本地和远程的仓库分支是一样的,都是master)

3.2 克隆远程仓库

你可以克隆上传的仓库到本地进行管理和修改:git clone repo(注意是ssh那个链接)
此时你的本地仓库自动就关联好了,就可以直接推送了。

3.3 通过https方式进行推送

没错,其实除了ssh的方式,还可以通过https的方式进行推送,这就是为什么上面叫你用ssh的方式绑定远程仓库了,如果你想通过https也是可行的,当你推送的时候会弹出身份验证,一般是叫你输入gitee的账号和密码,github在2022年禁止了这种验证方式,因此你需要去GitHub设置token才能通过https进行推送。

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

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

相关文章

js的常用类2

1.js的常用类DOM,将js,html中的各种文档,元素,标签等等封装成方法;和类

【openmediavault】更改端口后急救方案

首先,如果你手贱改了这个 导致你登陆不了的话,不要慌 找到你的控制台,我的是树莓派 将你的树莓派设置成root模式,如果服务器本身就是root就不用设置 树莓派设置root方法sudo su然后omv-firstaid 这个界面点ok即可,加载会有点慢是正常的现象#videoTogetherLoading { touch…

Git流程学习

初始化仓库特别要注意如果初始化仓库时勾选了图中第一个红框(即添加README仓库描述),它会给出下面红框的提示即将main作为默认分支,该部分的示例以此种方式初始化仓库。 注:2020年10月后GitHub宣布新建项目的默认分支将从master逐步改为main。以前一些教程给出的命令一般都…

.NET 9 RC1 正式发布

.NET 9 RC1 是 .NET 9 的第一个候选发布版本(Release Candidate),标志着该版本接近最终发布。根据Github 上相关的内容,我们可以总结出以下几点:新功能和改进:在 .NET 9 RC1 中,引入了许多新的功能和改进。例如,ASP.NET Core 在此版本中进行了多项更新,包括 SignalR 分…

监管动态| 网络空间协会首次发布合规常用APP清单,是否会有第二批?

9月10日中国网络空间安全协会官网发布公告,协会组织指导网上购物、地图导航、浏览器、新闻资讯、在线影音、电子图书、拍摄美化、云盘、短视频、演出票务共10类62款App运营方,对照《中华人民共和国网络安全法》《中华人民共和国个人信息保护法》《常见类型移动互联网应用程序…

时间embedding

左边的公式和 time_embedding(1) 的区别在于它们表示的维度不同。公式中的左边部分是一个概括性公式,用来说明如何为每个时间步 ( t ) 生成时间嵌入。而具体的 time_embedding(1) 展示的是当 ( t = 1 ) 时,如何生成一个更长维度的时间嵌入向量。 1. 左边公式的含义: 左边的公…

微信小程序开发系列8----页面配置--事件绑定

源码获取方式(免费):(1)登录-注册:http://resources.kittytiger.cn/(2)签到获取积分(3)搜索:6-wxmlevent事件绑定

LeetCode算法—滑动窗口

纵有疾风起;人生不言弃!一:滑动窗口 滑动窗口分为定长滑动窗口和非定长滑动窗口 定义:滑动窗口的题目一般都是非定长的;一般需要定义两个指针left,right;用来限制窗口的左边界和右边界;二:LeetCode 209 长度最小的数组 (1)题目:求连续最小的字串和大于目标值的最小长…

一文看懂什么是架构

对程序员来说,架构是一个常见词汇。如果想成为一名架构师,对架构概念的理解必须清晰。否则,在制定架构方案时,肯定会漏洞百出,问题频发,这将对你的面试、晋升和团队领导产生负面影响。 我们看下维基百科关于架构的定义:软件架构是抽象描述系统的一组结构,以及构建这些结…

【图论】Johnson全源最短路算法

2024-9-11 最后更新时间 2024-9-11 作者学会了一个叫做\(Johnson\)的算法,所以就有了这篇博客...... Johnson算法是一个高效处理全源最短路的算法 其实也很慢,但目前是最高效的 为了更加方便你们接下来的学习我希望你们已经掌握了基本的最短路算法(SPFA,Dijsktra,Bellman-…

更新mstsc

这次遇到的问题是系统远程程序mstsc故障,又不想重装系统, 于是通过挂载windows的ISO,想获取system32下的原版程序和相关文件, 挂载ISO后,sources文件夹下有一install.wim文件,通过以下命令提取所有系统安装文件至E盘临时目录temp下 dism /mount-wim /wimfile:"G:\so…