Git(七)GitHub的使用、ssh的配置与使用流程

在这里插入图片描述
在第一篇文章中我们提到过,中央服务器的可以是我们自己搭建的服务器,也可以直接使用GitHub网站。
之前文章的操作都是在我们自己的机器上进行,接下来会说到如何与GitHub交互进行工作。
一、简单的说一下GitHub的使用:
1.创建仓库(new repository):也叫创建项目,意义上和git init 命令是一样的;
在这里插入图片描述
repository name:项目的名称
description:对项目的描述
public:意思是开源的项目,对其他人可见的
private:意思是隐藏的,对指定的人可见,不过该功能是收费的
(实际上公司的代码一般都是私有的,属于公司机密)
iniaialize this repository with a README:用来说明该项目
add .gitignore:
我们希望git不要去给我们管理目录下的某种文件,比如忽略生成执行文件.o文件,就可以将*.o写入.gitignore文件中,这样git就不会给我们管理这些文件,自动忽略,如果我们不忽略,git会一直提示我们没有被。

比如:我创建一个名字为“KingOfMyHeart”的仓库:
在这里插入图片描述
在创建的时候.gitignore选项我选择了C++,创建仓库后,会自动给我们生成一个.gitignore文件,基本内容如下图:
在这里插入图片描述

2.如何与GitHub建立连接:添加ssh账户
如果某台机器需要与github上的仓库交互,那么就要把这台机器的ssh公钥添加到这个github账户上。
步骤如下:
2.1:点击账户头像后下拉三角,选择settings;
2.2: 然后找到SSH and GPG keys
在这里插入图片描述
title:公钥的名字;
key:将自己主机的ssh公钥粘贴复制到这里即可。

2.3:找到我unbuntu的ssh公钥,ssh的配置:

1.回到家目录下,编辑一个隐藏文件.gitconfig
subl .gitconfig  
(指定github登陆的邮箱和用户名,如下图1)
2.生成ssh公钥
ssh-keygen -t  rsa -C "邮箱地址"     (如下图2,rsa代表加密方式)
3.将公钥复制到github上
cat id_rsa.pub               (如下图3)

图1:
在这里插入图片描述
图2:
在这里插入图片描述
其中:
id_rsa:指的是ssh私钥
id_rsa.pub:指的是ssh公钥

图三:
在这里插入图片描述

3.如何将一个项目克隆到我们自己的主机:

1.首先得拿到项目的地址,比如就拿我刚才创建的那个kingofmyheart项目来说
https://github.com/321919187/KingOfMyHeart
2.然后打开页面,点击clone拿到ssh协议下的地址,如图一
[email protected]:321919187/KingOfMyHeart.git
2.然后到我们主机的工作目录下:
git clone [email protected]:321919187/KingOfMyHeart.git

图一:
在这里插入图片描述

4.接下来就可以进行开发了,进行远程提交代码:

1.创建一个自己的分支,用来工作
git checkout -b king

2.然后就在这个分支上进行工作
coding......

3.推送我们的代码:
git push origin  king     
(将我们本地的分支king推送到远程,也就是推送到github,如果远程没有这个分支,会自动创建king分支)

如何用本地的分支 跟踪 远程(origin,也就是github )的分支:

设置用本地的king分支跟踪远程的king分支,就是将本地的分支和远程的分支关联起来:
git branch --set-upstream-to=origin/king  king
(origin/king:远程的分支)
(king:本地的king分支)

查看两个分支的内容是否一致:
git status

比如我在我本地的king分支中创建一个新的cpp文件,本地进行依次新的提交:

git add a.cpp
git commit -m "创建a.cpp文件"


然后通过git  status 查看,会提示我们本地分支和远程的分支不一致,问我们需不需要push

只需要执行git push 即可

5.如何从远程的分支拉取代码:

git pull origin 分支名称

二、工作git使用的一般流程:

1.项目经理:
(1)搭建项目的框架
(2)将框架存放到服务器
2.coder:
(1)在自己主机生成ssh公钥,将公钥交给项目经理,项目经理讲我么的公钥添加到服务器上;
(2)项目经理把项目地址给员工,员工将代码下载到自己的主机上;
(3)员工在本地创建自己的分支,在自己的分支中进行工作;
(4)员工完成自己的开发后,都需要将代码发布远程的对应的分支上。

一般master分支保存完成的项目代码;
其他分支保存的是开发过程中的代码。

猜你喜欢

转载自blog.csdn.net/KingOfMyHeart/article/details/90050938