Ubuntu下本地仓库项目上传至github远程仓库

2024-09-07 02:48

本文主要是介绍Ubuntu下本地仓库项目上传至github远程仓库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

初次运行Git前需要先对Git的工作环境进行配置(如果之前已经设置过那么就不需要再设置一次),采用的工具是git config。主要设置用户信息即可,包括用户名和邮箱

$ git config --global user.name "用户名"

$ git config --global user.email 自己的邮箱

设置结束后可以通过以下指令查看配置信息

$ git config --list

2. Git本地仓库与Github远程仓库之间的传输主要是通过SSH方式加密传输,所以之前没有设置过需要创建SSH Key。创建方式如下

$ ssh-keygen -t rsa -C "自己的邮箱"

运行过程中会出现让你设置密码等要求,直接按回车,使用默认值即可


3. 如果上述指令运行成功,那么会在主目录(home)下生成一个.ssh的隐藏文件夹,按ctrl+h可以显示。点击进入后可以找到两个文件,分别为:id_rsa和id_rsa.pub。这两个文件对应了私密密钥和公开密钥,接下来就是要将公开密钥文件(即id_rsa.pub文件)中的代码复制到github中的“SSH Key”下面,具体过程如下。

(1)进入https://github.com/,选择settings选项,如下


(2)进入settings界面后点击选择SSH and GPG keys选项,再点击选择“new SSH key”添加新的SSH Key。需要注意是SSH Key可以添加多个,即不同的PC生成的SSH Key都可以添加。


(3)将.ssh文件夹下的id_rsa.pub文件中的内容复制到github中,点击Add SSH Key按钮即可生成,如下


4. 验证本地仓库与Github之间传输是否成功

$ ssh -T git@github.com

如果看到如下信息,表示成功连上github






本地仓库项目push到Github远程仓库

1.首先在本地新建一个仓库(repository)。一般都是push那个工程,就在那个工程目录下新建仓库,指令如下:

$ cd xxx(进入工程目录下)

$ git init
在新的仓库初始化后,工程当前目录下会出现一个名为 .git 的目录,该目录会记录和存放所有 Git 需要的数据和资源。


2. 不过目前为止,新建的仓库还是一个空的仓库,所以需要讲文件添加到仓库里面。需要注意的是只有仓库所在目录或者其子目录下的文件可添加至仓库中,其他目录下的文件Git无法找到。具体的实现是用git add指令将需要提交至仓库的文件从工作区添加到暂存区,告诉Git那些文件需要追踪。

$ git add .
上述指令是对该目录及其子目录所有文件进行追踪,也可以选择只跟踪单个文件或者子目录

$ git add 文件名(或子目录)
运行git status 指令可看到文件被跟踪处于暂存状态


3.Git将文件放入仓库的过程中会先将文件放到暂存区域中,再执行提交的操作。所以要确认还有什么修改过的或新建的文件还没有 git add 过,否则提交的时候不会记录这些还没暂存起来的变化。建议每次准备提交前,先用 git status 看下要提交至本地仓库的文件有没有暂存起来。将暂存区的文件提交至本地文件的命令如下:

$ git commit -m "first commit"

4. 我们的目的是在Ubuntu本地创建一个Git仓库后,将该仓库的文件同步到GitHub的远程仓库员中,所以需要登录GitHub创建一个远程仓库,具体如下

(1) 点击GitHub首页的“+”,选择New repository


(2)在跳出来的页面中设置远程仓库名字并点击生成远程仓库



5. GitHub上建立远程仓库后在将本地仓库中的文件push到该远程仓库之前需要关联本地仓库和远程仓库,指令如下

$ git remote add origin git@github.com:yourName/yourRepo.git
上述指令运行后,origin即为远程仓库的名字,而yourName是Github的账号,而yourRepo是在Github上面给新建的远程仓库取的名字。


6.将本地仓库的文件push到远程仓库中,指令如下:

$ git push -u origin master
这里要注意的是第一次推送master分支(Git的默认分支,其他分支操作这边不做介绍)时最好加上-u。因为该参数会把本地的master分支和远程的master分支关联起来,之后该本地仓库与远程仓库之间的推送或者拉取就可以简化为

$ git push
$ git pull

Ubuntu终端下push成功的结果


push后Github的远程仓库成功添加本地仓库的文件



参考资料

1. https://git-scm.com/book/en/v2

2. https://www.liaoxuefeng.com/


这篇关于Ubuntu下本地仓库项目上传至github远程仓库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1143838

相关文章

Node.js 数据库 CRUD 项目示例详解(完美解决方案)

《Node.js数据库CRUD项目示例详解(完美解决方案)》:本文主要介绍Node.js数据库CRUD项目示例详解(完美解决方案),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考... 目录项目结构1. 初始化项目2. 配置数据库连接 (config/db.js)3. 创建模型 (models/

springboot项目中常用的工具类和api详解

《springboot项目中常用的工具类和api详解》在SpringBoot项目中,开发者通常会依赖一些工具类和API来简化开发、提高效率,以下是一些常用的工具类及其典型应用场景,涵盖Spring原生... 目录1. Spring Framework 自带工具类(1) StringUtils(2) Coll

使用Node.js制作图片上传服务的详细教程

《使用Node.js制作图片上传服务的详细教程》在现代Web应用开发中,图片上传是一项常见且重要的功能,借助Node.js强大的生态系统,我们可以轻松搭建高效的图片上传服务,本文将深入探讨如何使用No... 目录准备工作搭建 Express 服务器配置 multer 进行图片上传处理图片上传请求完整代码示例

Android实现打开本地pdf文件的两种方式

《Android实现打开本地pdf文件的两种方式》在现代应用中,PDF格式因其跨平台、稳定性好、展示内容一致等特点,在Android平台上,如何高效地打开本地PDF文件,不仅关系到用户体验,也直接影响... 目录一、项目概述二、相关知识2.1 PDF文件基本概述2.2 android 文件访问与存储权限2.

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

python连接本地SQL server详细图文教程

《python连接本地SQLserver详细图文教程》在数据分析领域,经常需要从数据库中获取数据进行分析和处理,下面:本文主要介绍python连接本地SQLserver的相关资料,文中通过代码... 目录一.设置本地账号1.新建用户2.开启双重验证3,开启TCP/IP本地服务二js.python连接实例1.

Spring Boot项目中结合MyBatis实现MySQL的自动主从切换功能

《SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能》:本文主要介绍SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能,本文分步骤给大家介绍的... 目录原理解析1. mysql主从复制(Master-Slave Replication)2. 读写分离3.

使用Python开发一个简单的本地图片服务器

《使用Python开发一个简单的本地图片服务器》本文介绍了如何结合wxPython构建的图形用户界面GUI和Python内建的Web服务器功能,在本地网络中搭建一个私人的,即开即用的网页相册,文中的示... 目录项目目标核心技术栈代码深度解析完整代码工作流程主要功能与优势潜在改进与思考运行结果总结你是否曾经

Ubuntu中远程连接Mysql数据库的详细图文教程

《Ubuntu中远程连接Mysql数据库的详细图文教程》Ubuntu是一个以桌面应用为主的Linux发行版操作系统,这篇文章主要为大家详细介绍了Ubuntu中远程连接Mysql数据库的详细图文教程,有... 目录1、版本2、检查有没有mysql2.1 查询是否安装了Mysql包2.2 查看Mysql版本2.

使用Python实现快速搭建本地HTTP服务器

《使用Python实现快速搭建本地HTTP服务器》:本文主要介绍如何使用Python快速搭建本地HTTP服务器,轻松实现一键HTTP文件共享,同时结合二维码技术,让访问更简单,感兴趣的小伙伴可以了... 目录1. 概述2. 快速搭建 HTTP 文件共享服务2.1 核心思路2.2 代码实现2.3 代码解读3.