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

相关文章

idea+spring boot创建项目的搭建全过程

《idea+springboot创建项目的搭建全过程》SpringBoot是Spring社区发布的一个开源项目,旨在帮助开发者快速并且更简单的构建项目,:本文主要介绍idea+springb... 目录一.idea四种搭建方式1.Javaidea命名规范2JavaWebTomcat的安装一.明确tomcat

pycharm跑python项目易出错的问题总结

《pycharm跑python项目易出错的问题总结》:本文主要介绍pycharm跑python项目易出错问题的相关资料,当你在PyCharm中运行Python程序时遇到报错,可以按照以下步骤进行排... 1. 一定不要在pycharm终端里面创建环境安装别人的项目子模块等,有可能出现的问题就是你不报错都安装

在Ubuntu上打不开GitHub的完整解决方法

《在Ubuntu上打不开GitHub的完整解决方法》当你满心欢喜打开Ubuntu准备推送代码时,突然发现终端里的gitpush卡成狗,浏览器里的GitHub页面直接变成Whoathere!警告页面... 目录一、那些年我们遇到的"红色惊叹号"二、三大症状快速诊断症状1:浏览器直接无法访问症状2:终端操作异常

java程序远程debug原理与配置全过程

《java程序远程debug原理与配置全过程》文章介绍了Java远程调试的JPDA体系,包含JVMTI监控JVM、JDWP传输调试命令、JDI提供调试接口,通过-Xdebug、-Xrunjdwp参数配... 目录背景组成模块间联系IBM对三个模块的详细介绍编程使用总结背景日常工作中,每个程序员都会遇到bu

Java服务实现开启Debug远程调试

《Java服务实现开启Debug远程调试》文章介绍如何通过JVM参数开启Java服务远程调试,便于在线上排查问题,在IDEA中配置客户端连接,实现无需频繁部署的调试,提升效率... 目录一、背景二、相关图示说明三、具体操作步骤1、服务端配置2、客户端配置总结一、背景日常项目中,通常我们的代码都是部署到远程

uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)

《uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)》在uni-app开发中,文件上传和图片处理是很常见的需求,但也经常会遇到各种问题,下面:本文主要介绍uni-app小程序项目中实... 目录方式一:使用<canvas>实现图片压缩(推荐,兼容性好)示例代码(小程序平台):方式二:使用uni

Ubuntu向多台主机批量传输文件的流程步骤

《Ubuntu向多台主机批量传输文件的流程步骤》:本文主要介绍在Ubuntu中批量传输文件到多台主机的方法,需确保主机互通、用户名密码统一及端口开放,通过安装sshpass工具,准备包含目标主机信... 目录Ubuntu 向多台主机批量传输文件1.安装 sshpass2.准备主机列表文件3.创建一个批处理脚

MyCat分库分表的项目实践

《MyCat分库分表的项目实践》分库分表解决大数据量和高并发性能瓶颈,MyCat作为中间件支持分片、读写分离与事务处理,本文就来介绍一下MyCat分库分表的实践,感兴趣的可以了解一下... 目录一、为什么要分库分表?二、分库分表的常见方案三、MyCat简介四、MyCat分库分表深度解析1. 架构原理2. 分

linux查找java项目日志查找报错信息方式

《linux查找java项目日志查找报错信息方式》日志查找定位步骤:进入项目,用tail-f实时跟踪日志,tail-n1000查看末尾1000行,grep搜索关键词或时间,vim内精准查找并高亮定位,... 目录日志查找定位在当前文件里找到报错消息总结日志查找定位1.cd 进入项目2.正常日志 和错误日

在.NET项目中嵌入Python代码的实践指南

《在.NET项目中嵌入Python代码的实践指南》在现代开发中,.NET与Python的协作需求日益增长,从机器学习模型集成到科学计算,从脚本自动化到数据分析,然而,传统的解决方案(如HTTPAPI或... 目录一、CSnakes vs python.NET:为何选择 CSnakes?二、环境准备:从 Py