用git上传github加强

文章目录

一些情况
1.PC和虚拟机,各自创建秘钥,然后上传到自己的github
2.一旦秘钥弄好了,直接创建一个目录,如果自己想上传某个或者更新某一个库,先git clone 那个库的ssh,之后更新后,就是git add 文件/路径 git commit -m “标签” git push origin main
还想更新再上传的是,git pull
在这里插入图片描述

【Linux下安装git】
命令:sudo apt-get intsall git
出现以下界面时,表示安装成功:

Linux下配置用户名和邮箱
命令:
git config --global user.email “you@example.com”
git config --global user.name “Your Name”
例:
git config --global user.email “328800461@qq.com”
git config --global user.name “zhushuangjian”

【github 注册用户】

  1. 浏览器下输入www.github.com后注册账户

  2. 登录git,点击Sign in

  3. 登陆之后,点击“+”,选择new repository

  4. 创建一个仓库
    【使用 https协议和远程仓库通信】
    点击code ,选择https,点击链接旁边的白色小方框进行复制:

Linux下,首先创建一个目录github,进入该目录:

使用命令初始化本地仓库:

命令:git init
初始化成功之后,会生成.git目录

使用https方式将远端代码克隆到本地:
如下图所示,即为克隆成功:

进入查看:

本地修改代码,推送到远端仓库流程:
首先创建一个1.c文件,并填充一点测试内容,退出保存:

使用命令git status查看:

使用命令:git add 1.c 将修改内容添加到暂存区

命令:git commit -m “add 1.c”,将修改从暂存区提交到本地仓库:

命令:git push origin main ,将修改从本地仓库推送到远程仓库:(此处要求我们输入用户名和密码)

github社区检查:

【主流ssh通讯方式】(重点掌握):

本地配置ssh key:
命令:ssh-keygen -t rsa -C “你的邮箱”。
出现以下界面,表示密钥生成成功,接下来我们开始在配置密钥:

在/home/linux/.ssh目录下生成两个文件id_rsa和 id_rsa.pub。
命令:cat id_rsa.pub 复制密钥:

打开github官网,按照如下步骤,添加密钥:

添加完毕之后,打开虚拟机测试是否成功,命令:ssh -T git@github.com
成功显示:

不成功显示:

输入命令:ssh-add

再次输入命令:ssh -T git@github.com

删除刚刚克隆的仓库:

打开www.github.com,进入我们的远端仓库,如下,复制ssh链接:

克隆远程仓库
命令:git clone git@github.com:zhushuangjian/testzsj.git

和https类似,从工作区–>暂存区–>本地仓库–>远程仓库:(推送到远程无需输入密码)

检查远端,新的修改已经刷新:

【创建分支】
创建一个叫“feature_x”的分支:
命令:git branch feature_x

【查询分支】
命令:git branch

【切换分支】
命令:git checkout feature_x

在该分支下修改文件内容,提交到远程

【合并分支】到本地仓库
命令:git merge feature_x

【推送到远程】
命令:git push orgin main

【获取最新代码】
命令:git pull

  1. 常见问题解决方案
    【关于每次push都要输入用户名和密码的问题?】
    我们在建立远程仓库或者克隆项目时,使用的是HTTPS方式 ,HTTPS方式push不会保存用户名和密码。我们需要把HTTPS方式改成SSH的方式
    git remote -v 查看
    origin https://github.com/zhushuangjian/testprj.git (fetch)

origin https://github.com/zhushuangjian/testprj.git (push)
解决方案:
git remote rm origin 删除原先HTTPS的连接方式

GitHub仓库复制SSH的地址
git remote add origin SSH地址,连接方式更改为SSH方式

重新查看连接方式 git remote -v 会发现已经更改成了ssh的方式
origin git@github.com:zhushuangjian/testprj.git (fetch)
origin git@github.com:zhushuangjian/testprj.git (push)

【本地恢复误删文件:】
git reset HEAD 文件/文件名
或者 Git reset --hard HEAD^ 回退到上个版本
git checkout 文件/文件名

【git pull相关问题】
无法git pull解决方案:
命令一: git pull origin main
命令二: git branch --set-upstream-to=origin/main main

posted @ 2022-08-01 19:25  周末不下雨  阅读(14)  评论(0编辑  收藏  举报