写在文章前,Git的操作并没有本文中写的那么简单,文中写到的只是Git的一些简单的操作。
例如创建分支,分支切换等,文中并没有记录,后续会专门写一篇关于Git的高级应用的文章。
不足之处还请多多见谅。
SSH私钥的配置教程,在文章的后半段;前面主要写的是HHTP链接git的方法


文章目录

  • 相同点与不同点
  • Git的一般操作流程
  • 创建git仓库
  • 克隆 : git clone
  • 查看本地文件状态 : git status
  • 建立追踪 git add <文件名>
  • 提交文件 : git commit
  • 推送至远程云端 : git push
  • 查看推送的文件
  • 拉取代码 : git pull
  • 通过SSH 方式进行git操作
  • 进入私钥文件的路径



目前 git 是现阶段个人与企业开发过程中使用率最多的代码版本管理工具

GitLab是代码管理工具;Github也是代码管理工具。
对于个人而言,二者的使用在命令上都是一样的。

相同点与不同点

Gitlab与Github都是基于web 的Git仓库,在很大的程度上来说,Gitlab是仿照Github来做的。

Github是面向整个互联网开放的在线代码托管仓库,如果想要使用私有仓库,是需要付费的。
Gitlab可以搭建免费的私人仓库,同时Gitlab让开发团队对他们自己搭建的私有仓库拥有更大的控制权。

在企业中,大部分公司在使用的选择上也会使用Gitlab,这样的话开发团队可以在上面创建私人的免费仓库,对他们的代码仓库拥有更多的控制。

Gitlab允许免费设置仓库权限;允许用户选择分享一个project的部分代码;允许用户设置项目工程的获取权限,从而提升安全性;可以设置获取到团队整体的改进进度;同事通过innersourcing让不在权限范围内的人访问不到该资源。

站在公司层面以及代码的私有性层面来看,有时公司并不希望员工获取到全部的代码,这个时候Gitlab就是一个很好的选择。
但是对于一个开源的项目来说,Github依然是代码托管的首要选择。

Git的一般操作流程

创建git仓库

访问仓库地址,进入 项目组 页面,点击 “New Project”

Project name : 项目名称必须是英文

Project description(optional):项目描述,可以使用中文。

Create project : 创建项目

如何判断一个私钥是PKCS1 还是 PKCS8_初识Git


如何判断一个私钥是PKCS1 还是 PKCS8_初识Git_02


如何判断一个私钥是PKCS1 还是 PKCS8_Git SSH私钥的配置教程_03


创建完成后的仓库会自动生成一个仓库地址

在后续的克隆仓库到本地会使用到。

在本地或远程下载上传代码到 gitlab ,有两种方式:ssh 和 http

如何判断一个私钥是PKCS1 还是 PKCS8_Gitlab_04

克隆 : git clone

注意:如果没有安装git 的情况下,需要安装git
Ubuntu 系统安装git 命令:sudo apt-get install git

复制项目的 http 方式的仓库地址

输入命令: git clone http://.xxxxxxxx (仓库的http地址)

根据提示输入 Username 和 Password

附:password 在输入的过程中是不显示的

如何判断一个私钥是PKCS1 还是 PKCS8_Gitlab_05

查看本地文件状态 : git status

查看本地状态前 先创建一个文件,并在文件内输入一些文字

	mkdir a		#创建一个文件 a
	vim a		#编辑文件a,输入一些文字 (我这里输入的是 aaaaaa)
	:wq			#保存并退出

查看文件状态

git status

如何判断一个私钥是PKCS1 还是 PKCS8_Git_06


上图提示的内容为,文件 a 并未被追踪到 请使用git add <文件名> 命令追踪文件a。

建立追踪 git add <文件名>

git add a		#追踪文件 a
	git status 	#查看文件状态

如何判断一个私钥是PKCS1 还是 PKCS8_Git_07


新文件: a #表示文件 a 已经被追踪到

提交文件 : git commit

git commit -m “第一次提交的信息”
	
	附:这里的提交信息是 提交至本地,而不是提交至git 仓库的云端
	- m : -m 后面的信息是这次提交的备注信息,一般都会提交具体的一些变更信息

在执行提交文件的命令时,会遇到如下图的问题

如何判断一个私钥是PKCS1 还是 PKCS8_初识Git_08


这里的提示是 需要你输入 邮箱地址 和 用户名

按照提示,输入 邮箱地址 和 用户名 之后,再执行提交命令即可(一般情况下输入一次即可,以后不会再要求输入)

推送至远程云端 : git push

git push		# 将刚刚添加的追踪文件 a ,推送至远程云端

这里会再次要求输入用户名和密码,再次输入用户名和密码即可。

如何判断一个私钥是PKCS1 还是 PKCS8_git_09

查看推送的文件

进入刚刚我们创建的项目路径下,刷新一下,即可看到我们刚刚推送的文件

如何判断一个私钥是PKCS1 还是 PKCS8_Git SSH私钥的配置教程_10

点击文件 a

如何判断一个私钥是PKCS1 还是 PKCS8_Gitlab_11

拉取代码 : git pull

如何判断一个私钥是PKCS1 还是 PKCS8_git_12


至此,git 的一般操作流程,我们就执行结束了。

但是通过上述操作,我们会发现,通过http链接方式,进行git 仓库操作克隆、拉取代码需要进行多次的输入用户名与密码,进行操作,比较繁琐,那么接下来我们进行SSH的链接方式来进行操作。

通过SSH 方式进行git操作

如何判断一个私钥是PKCS1 还是 PKCS8_Git_13


如果想要使用 SSH 链接的方式,首先需要生成一个SSH 私钥。

在本地任意文件夹路径下执行如下命令

ssh-keygen -t rsa -C “你的邮箱地址”

如: ssh-keygen -t rsa -C “32417163xxx@qq.com”

执行生成私钥的命令后,会提示你输入一些信息,这里不用输入,直接回车即可(重复几次会车)。

过程中,会提示生成的私钥,在根目录路径下的一个文件内,见下图。

如何判断一个私钥是PKCS1 还是 PKCS8_初识Git_14

进入私钥文件的路径

cd ~				#进入home根目录
	pwd				#查看是否进入当前根目录
	ls -al				#查看所有目录(包含隐藏文件:隐藏文件夹 .ssh
	cd .ssh			#进入 .ssh 目录下
	ls -al				#查看当前 .ssh 路径,所有的文件
	cat id_rsa.pub		#查看 文件 id_rsa.pub

“id_rsa.pub” 文件内的内容即是生成的 ssh 私钥

如何判断一个私钥是PKCS1 还是 PKCS8_初识Git_15

复制该私钥,粘贴进gitlab 的个人设置中心的 SSH Keys,生成一个新的key

如何判断一个私钥是PKCS1 还是 PKCS8_Git_16


如何判断一个私钥是PKCS1 还是 PKCS8_Git SSH私钥的配置教程_17


回到项目当中,复制 SSH 链接地址。

再回到本地的工作路径下

执行 git clone < SSH 链接地址 > ,根据提示信息输入yes,即可将远程云端的代码克隆岛本地,且不用再输入用户名和密码。

如何判断一个私钥是PKCS1 还是 PKCS8_Git_18