向github上提交代码的步骤

向github上提交代码的步骤

第一步:ssh-keygen -t rsa -C “554059979@qq.com”

第二步:这个是默认保存秘钥/root/.ssh/id_rsa的路径

第三步:cd /root/.ssh/ 进入.ssh目录

第四步:在.ssh目录下找到id_rsa.pub文件

第五步:打开id_rsa.pub,将里面的内容复制到github上,进入 Account Settings(账户配置),左边选择SSH Keys,Add SSH Key,title随便填,粘贴在你电脑上生成的key。具体操作如下图所是:

在这里插入图片描述

在右边按钮下面点击setting会弹出如上的界面,然后在左边的菜单栏,点击SSH and GPG keys 。点击了SSH和GPG keys后。会弹出下图:

在这里插入图片描述

然后点击 New SSH key,会出现如下图所是的:

在这里插入图片描述

最后将你从id_rsa.pub复制的密码复制到上面的框里面。

第六步:测试,连接是否可用。在命令行中输入ssh -T git@github.com,得出的测试结果如下图所是:出现了下面的代码表示成功了。

[root@centos01 .ssh]# ssh -T git@github.com

Enter passphrase for key ‘/root/.ssh/id_rsa’:

Hi tdw1234! You’ve successfully authenticated, but GitHub does not provide shell access.

第七步:可以将本地仓库的项目上传之github之上。我们要做的就是把本地仓库传到github上去,在此之前还需要设置username和email,因为github每次commit都会记录他们。如下面的代码所是:

git config --global user.name “tdw1234”

git config --global user.email “554059979@qq.com”

第八步 :在执行第七步的过程中,可能会出现没有git命令,这个时候,就需要使用yum install git. 安装成功后,可以使用git --version 来进行版本的查看。

第九步:就是推送代码到github上面,但是在将代码推送到github上之前,先要在本地建立一个仓库:具体步骤如下所是:

步骤一:我的例子是在software文件夹下面新建一个resposity文件。/software/resposity

步骤二:将需要上传的代码复制该文件夹下面:

cp -r /software/workspace/singledatamutipletableshardingjdbc/. /software/resposity/

步骤三:切换到路径下面:cd /software/resposity/ 然后之执行git init;

[root@centos01 resposity]# git init
初始化空的 Git 版本库于 /software/resposity/.git/

步骤四:可以使用git status,看下状态值:

[root@centos01 resposity]# git status

# 位于分支 master
#
# 初始提交
#
# 未跟踪的文件:
#   (使用 "git add <file>..." 以包含要提交的内容)
#
#	.idea/
#	pom.xml
#	singledatamutipletableshardingjdbc.iml
#	src/
#	target/
提交为空,但是存在尚未跟踪的文件(使用 "git add" 建立跟踪)
这里提示你虽然把项目粘贴过来了,但还没有add到Git仓库上,然后我们通过git add .把刚才复制过来的项目全部添加到本地仓库上。

步骤五:使用git add . 将项目添加到仓库中。然后在用git status 看一下。

[root@centos01 resposity]# git add *

# 位于分支 master
#
# 初始提交
#
# 要提交的变更:
#   (使用 "git rm --cached <file>..." 撤出暂存区)
#
#	新文件:    .idea/compiler.xml
#	新文件:    .idea/encodings.xml
#	新文件:    .idea/misc.xml
#	新文件:    .idea/workspace.xml
#	新文件:    pom.xml
#	新文件:    singledatamutipletableshardingjdbc.iml
#	新文件:    src/main/java/david/soft/com/OrderApplication.java
#	新文件:    src/main/java/david/soft/com/algorithm/ModuloTableShardingAlgorithm.java
#	新文件:    src/main/java/david/soft/com/common/BaseEntity.java
#	新文件:    src/main/java/david/soft/com/common/PageResult.java
#	新文件:    src/main/java/david/soft/com/common/Result.java
#	新文件:    src/main/java/david/soft/com/config/DataSourceConfig.java
#	新文件:    src/main/java/david/soft/com/config/Swagger2Config.java
#	新文件:    src/main/java/david/soft/com/order/OrderConstants.java
#	新文件:    src/main/java/david/soft/com/order/controller/OrderController.java
#	新文件:    src/main/java/david/soft/com/order/entity/Order.java
#	新文件:    src/main/java/david/soft/com/order/mapper/OrderMapper.java
#	新文件:    src/main/java/david/soft/com/order/service/OrderService.java
#	新文件:    src/main/java/david/soft/com/order/service/impl/OrderServiceImpl.java
#	新文件:    src/main/java/david/soft/com/order/vo/OrderVO.java
#	新文件:    src/main/resources/application.yml
#	新文件:    src/main/resources/mybatis/1
#	新文件:    src/main/resources/mybatis/mapper/OrderMapper.xml
#	新文件:    target/classes/META-INF/spring-configuration-metadata.json
#	新文件:    target/classes/application.yml
#	新文件:    target/classes/david/soft/com/OrderApplication.class
#	新文件:    target/classes/david/soft/com/algorithm/ModuloTableShardingAlgorithm.class
#	新文件:    target/classes/david/soft/com/common/BaseEntity.class
#	新文件:    target/classes/david/soft/com/common/PageResult.class
#	新文件:    target/classes/david/soft/com/common/Result.class
#	新文件:    target/classes/david/soft/com/config/DataSourceConfig.class
#	新文件:    target/classes/david/soft/com/config/Swagger2Config.class
#	新文件:    target/classes/david/soft/com/order/OrderConstants.class
#	新文件:    target/classes/david/soft/com/order/controller/OrderController.class
#	新文件:    target/classes/david/soft/com/order/entity/Order.class
#	新文件:    target/classes/david/soft/com/order/mapper/OrderMapper.class
#	新文件:    target/classes/david/soft/com/order/service/OrderService.class
#	新文件:    target/classes/david/soft/com/order/service/impl/OrderServiceImpl.class
#	新文件:    target/classes/david/soft/com/order/vo/OrderVO.class
#	新文件:    target/classes/mybatis/1
#	新文件:    target/classes/mybatis/mapper/OrderMapper.xml

步骤六:用git commit把项目提交到仓库。git commit -m “first commit” 到此本地仓库已经建立好了。

第十步:就是通过命令连接到github上,进行代码的上传。

git remote add origin https://github.com/tdw1234/resposity.git

第十一步:关联好之后我们就可以把本地库的所有内容推送到远程仓库(也就是Github)上了,通过:

$ git push -u origin master :上传之后如下所示:

 ! [rejected]        master -> master (fetch first)
error: 无法推送一些引用到 'https://github.com/tdw1234/resposity.git'
提示:更新被拒绝,因为远程版本库包含您本地尚不存在的提交。这通常是因为另外
提示:一个版本库已推送了相同的引用。再次推送前,您可能需要先合并远程变更
提示:(如 'git pull')。
提示:详见 'git push --help' 中的 'Note about fast-forwards' 小节。

第十二步:需要强制上传:git push -u origin +master :上传后如下所示:

Username for 'https://github.com': tdw1234
Password for 'https://tdw1234@github.com': 
Counting objects: 76, done.
Compressing objects: 100% (58/58), done.
Writing objects: 100% (76/76), 36.77 KiB | 0 bytes/s, done.
Total 76 (delta 2), reused 0 (delta 0)
remote: Resolving deltas: 100% (2/2), done.
To https://github.com/tdw1234/resposity.git
 + 21688c9...70f6842 master -> master (forced update)
分支 master 设置为跟踪来自 origin 的远程分支 master。

第十二步: 由于新建的远程仓库是空的,所以要加上-u这个参数,等远程仓库里面有了内容之后,下次再从本地库上传内容的时候只需下面这样就可以了:

$ git push origin master

第十三步:可以克隆项目:git clone username@host:/path/to/repository

第十四步:可以参考该连接git代码提交

第十五步:一个仓库管理多个分枝的连接一个仓库管理多个项目

怎样切换分支:如果你本地代码已经修改了代码,而远程的代码库里面也已经修改了代码,怎样把你本地代码库和远程代码库进行合并了。

第一步:首先在你的本地新建一个分支,例如:一般本地都有maste分支,现在需要新建一个dev分支,首先,删除.git文件,也可以删除那个.gitgnore;然后再git init ,git add * ,git commit -m “master”,git branch -a
git branch dev ;最后再用git branch -a进行查看。
第二步:切换分支 git checkout dev
第三步:add连接远程的地址 git remote add origin https://github.com/tdw1234/resposity.git .
第四步:拉取代码 git pull origin dev --allow-unrelated-histories
第五步:肯定会发生冲突的,没是,这个可以到,UI界面取手动解决冲突,例如,你是IDEA进行的项目开发,可以到IEDA中选中项目右键,选中git,然后选中git下拉框中的Resolve Conflicts.
第六步:就是进行手工的合并,合并完成后,可能会出现NO tracked branch configured for branch dev or the branch doesn’t exist.To make your branch track a remote branch call ,for example git branch --set-upstream-to = origin/dev dev.这个报错也能解决
第七步:
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值