Ubuntu下本地代码上传到 Github仓库管理

1、创建 SSH Key

由于本地Git仓库Github网站之间传输主要通过SSH加密,因此需要设置SSH Key(注:每次上传可重新设置一个SSH Key或者使用已有SSH Key,在客户端生成公钥,把生成的公钥添加到服务器,以后连接服务器就不用每次都输入用户名和密码了)

1.1 在本地生成 SSH Key

打开终端输入

ssh-keygen -t rsa -C huangjunsheng756@163.com

中间会提示你输入内容,直接 enter 即可,不需要输入,结果如下
过程图待补充
此时在 ~/.ssh 目录下会生成一个 id_rsa.pub 文件,其内容就是前面所需要的 Key,
在这里插入图片描述
打开终端,输入以下指令查看生成的 SSH Key

cat ~/.ssh/id_rsa.pub

在这里插入图片描述

1.2 在 Github 端设置 SSH Key

登录 GitHub 官网并登录自己的帐号,点击右上角头像,选择 settings,并选择 SSH and GPG keys,点击 New SSH key,显示
在这里插入图片描述
此时需要我们设置一个 title 和 key,其中 title 可以随便取,key 就是上一步中我们在 ~/.ssh/id_rsa.pub 文件中生成的内容。
将其内容复制到 Key 中,就成功创建了 SSH Key。

1.3 验证是否成功建立连接

终端输入

ssh -T git@github.com

显示如下内容则表示成功连接 GitHub

hjs@hjs:~/xMate7p_ros$ ssh -T git@github.com
Hi HJSjoker! You've successfully authenticated, but GitHub does not provide shell access.

2、设置本地 Git

2.1 本地安装 Git

sudo apt-get install git

2.2 查看当前 Git 版本

git --version

2.3 设置本地 Git 的用户名和邮箱

git config --global user.name HJSjoker
git config --global user.email huangjunsheng756@163.com

2.4 查看本地 Git 配置信息

git config --list

在这里插入图片描述

3、上传项目到 Github

3.1 如果是新创建的项目(没有 .git 文件)

3.1.1 Git 初始化,

在需要上传文件夹的根目录,打开终端并输入以下git指令进行初始化操作,执行后,当前目录会变成一个 Git 仓库,并生成一个隐藏的 .git 文件夹

git init

3.1.2 查看当前分支:

git branch

3.1.3 创建本地分支

git branch <branch-name>

3.1.4 切换分支

git checkout <branch-name>

也可以使用以下命令同时创建并切换到新分支:

git checkout -b <branch-name>

3.1.5 添加远程仓库

git remote add origin git@github.com:HJSjoker/xMate7p_ros.git

添加一个名为 origin 的远程仓库,指向指定的 GitHub 地址。这是将本地仓库与远程仓库关联起来的步骤。

3.1.6 添加更改到暂存区,准备进行提交

git add

使用 git add 命令将更改添加到暂存区。例如,可以运行git add ./命令将当前目录及其所有子目录中的所有更改(包括新文件、修改的文件和删除的文件)添加到 Git 的暂存区。如果只想暂存特定的文件,可以运行git add <文件路径> ,使相应文件进入暂存区,准备提交到git仓库。

3.1.7 将暂存区的更改提交到本地 Git 仓库,并附上提交信息

git commit -m "描述信息"

在引号中,可以输入一条简短的提交信息,以解释您所做的更改。
注意,git commit 只会提交暂存区中的更改到本地 Git。如果您有其他未暂存的更改,您需要在提交至本地 Git 之前使用 git add 命令将它们添加到暂存区。

3.1.7 推送至远程仓库

在执行 git commit 后,您的更改已经成功提交到本地仓库中。但是,这只是将更改保存在本地,还没有将它们推送到远程仓库(如GitHub)。

git push origin master

将本地 master 分支上所有未推送的提交和更改上传到远程仓库origin的 master 分支。如果远程仓库中已有 master 分支,这个命令会更新远程的 master 分支,使其与本地的 master 分支内容一致。如果远程仓库中没有 master 分支,则会创建一个新的远程 master 分支。

git push -u origin master

-u 参数会将本地的 master 分支与远程的 master 分支建立跟踪关系,以后可以直接使用 git push 和 git pull 而不需要指定远程和分支名称。

完成以上步骤后,您的代码更改就会被推送到GitHub上,并与其他开发人员共享。

3.2 如果是已经存在的项目(已有 .git 文件)

3.2.1 查看当前关联 git 仓库配置信息

导航到本地git仓库所在的目录,使用以下命令查看当前关联的git仓库配置信息,确认已设置了与GitHub仓库的远程连接:

git remote -v

显示:

hjs@hjs:~/xMate7p_ros$ git remote -v
origin	git@github.com:HJSjoker/xMate7p_ros.git (fetch) 
origin	git@github.com:HJSjoker/xMate7p_ros.git (push)

能够看到列出了一个或多个名为 “origin” 的远程仓库,其中包含GitHub仓库的URL。其中 origin 是默认的远程仓库名称,通常指向你克隆的 GitHub 仓库。
命令1 是指从远程仓库 origin 获取数据(fetch)的地址。通过这个地址,你可以下载远程仓库的最新内容到本地;
命令2 是指将本地的更改推送(push)到远程仓库 origin 的地址。通过这个地址,你可以把你的本地提交上传到远程仓库;
这两条命令分别定义了从远程仓库获取数据和将数据推送到远程仓库的路径。

3.2.2 添加远程仓库

如果没有列出任何远程仓库,您需要将GitHub仓库的URL添加为远程仓库。使用以下命令添加远程连接:

git remote add origin git@github.com:HJSjoker/xMate7p_ros.git

3.2.3 删除远程仓库

git remote remove origin

此时再输入 git remote -v 就显示没有远程仓库了,然和重新输入 GitHub 上待更新项目的地址。

3.2.4 查看当前仓库的状态。

确认已经将更新的更改添加到本地仓库的索引中,运行以下命令可以查看仓库中的更改状态,包括已修改但未暂存的文件和已暂存但未提交的文件。

git status

3.2.5 git add

3.2.6 git commit -m "描述信息"

3.2.7 推送至远程仓库

在执行 git commit 后,您的更改已经成功提交到本地仓库中。但是,这只是将更改保存在本地,还没有将它们推送到远程仓库(如GitHub)。

git push origin master

将本地 master 分支上所有未推送的提交和更改上传到远程仓库origin的 master 分支。如果远程仓库中已有 master 分支,这个命令会更新远程的 master 分支,使其与本地的 master 分支内容一致。如果远程仓库中没有 master 分支,则会创建一个新的远程 master 分支。

git push -u origin master

-u 参数会将本地的 master 分支与远程的 master 分支建立跟踪关系,以后可以直接使用 git push 和 git pull 而不需要指定远程和分支名称。

4、 从远程仓库拉取最新更改

git pull origin

在开始编写新的代码或修改现有代码之前,先执行 git pull origin <分支名称> 来拉取最新的更改,并将远程仓库中的更改合并到您的本地分支中。

5 参考博客

Ubuntu系统中本地代码上传至Github库
Ubuntu 上传项目到 GitHub
GitHub仓库代码更新

【备注】本篇文章主要参考以上资料,方便自己回顾查看进行记录,如有侵权可联系本人!

### 将代码传到GitHub私有仓库 要在Ubuntu系统中将代码推送到GitHub私有仓库,需要完成SSH密钥设置以及Git命令操作。以下是具体方法: #### 1. 配置SSH密钥 为了安全地连接到GitHub私有仓库,建议使用SSH协议而不是HTTPS。首先生成一个新的SSH密钥。 运行以下命令来创建一个SSH密钥: ```bash ssh-keygen -t rsa -b 4096 -C "your_email@example.com" ``` 此命令会提示指定保存位置,默认路径为`~/.ssh/id_rsa`。如果这是第一次配置,则可以接受默认选项[^1]。 接着复制公钥内容至剪贴板以便稍后添加到GitHub账户上: ```bash cat ~/.ssh/id_rsa.pub ``` 登录到GitHub网站,在个人资料页面找到 **Settings -> SSH and GPG keys**, 点击 “New SSH Key”,粘贴刚才获取的内容并提交。 #### 2. 初始化本地项目作为Git库 假设当前目录下有一个待推送的新文件夹或者现有工程根目录里尚未初始化版本控制环境的话,执行如下指令将其转换成Git管理状态: ```bash git init ``` 关联远程地址(替换掉下面URL中的占位符部分),对于私人存储库而言通常形式类似于 `git@github.com:username/repository-name.git` : ```bash git remote add origin git@github.com:YourUsername/YourPrivateRepoName.git ``` #### 3. 提交更改与推送数据 把所有改动加入暂存区后再正式记录下来成为一次历史节点: ```bash git add . git commit -m "Initial commit message describing changes." ``` 最后一步就是实际传输这些修改给云端服务器端了: ```bash git push -u origin master # 如果分支名称不是master, 则相应调整参数即可. ``` 注意首次尝试可能还会被询问关于主机身份验证之类的问题;只需按照屏幕上的指示继续下去就行。 另外值得注意的是这里提到的工具包下载链接仅适用于安装大型文件处理插件的情况[LFS][^2], 对于常规文本源码类别的同步并不强制需求. ```python print("Code successfully pushed!") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值