使用GitHub小总结

 前言:最近研究了一下github存储项目,提交对应不用的代码库,遇到的问题,做了一个小总结

首先是我在react配置一些文件需要执行npm run eject 生成隐藏配置文件,执行前需要将项目提交上git,后续在使用github时遇到一些问题

问题一:登录遇到的坑点

使用github提交首先在GitHub上新建一个项目然后根据提示操作会弹出一个登录框,当填写完后会发现报错

remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.

remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.

-  远程:2021 年 8 月 13 日移除了对密码身份验证的支持。请改用个人访问令牌。

- 远程:请参阅 https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ 了解更多信息。

原因:GitHub从2021 年 8 月 13 日所有经过身份验证的 Git 操作都需要基于令牌的身份验证

解决方法:前往github的`setting`左边有一个 `Developer settings` 选择 `Personal access tokens`生成新的令牌,复制保存,回到登录登录的页面填在密码那里,需注意的是`Username填的是电子邮箱,Password填的是令牌 `

问题二:反复弹出登录框,需要登录

解决方案:找到电脑控制面板--->凭据管理器--->windows凭据--->添加普通凭据(windows凭据其实是一个系统组件,能够帮助完成本地访问时的认证工作)

问题三:ssh的使用(git是分布式的代码管理工具,远程的代码管理是基于ssh的,所以要使用远程的git则需要ssh的配置) 

解决方法:

 1、进入~/.ssh 生成本地ssh-keygen

ssh-keygen -t rsa -C "username@email.com"

要输入密码,可以直接回车再回车,此时会生成id_rsa,id_rsa.pub文件,查看id_ras.pub文件,并复制里面的key(ssh-rsa开头) 

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC/IkVumnbHR/tqX06uZ/56XhfL2Z+PXP5wUyM5gTfKKwuXHntNFcDjZiDBcE+LsSYExGOKwSJEneO8IewwbWFL3wylv+94cVuVOB2PO3L48Iy+FQlntsGGlTZl+2HvVsdm3EnOjNlhvfgkoG6V2nGlpfADStI1ggRMbCC7K/fhZwUVFANHg0d+mZV5hbxUVxUXJ2tYtyvSsrM30Nze2SOVFa8ZCdPZYE471j0Ay8ovhn1LsHZ3GxHk7zpnAPt7X+SPcCxBZ7b1ydfy1bfRdHNYa0BHo+ANuRO51ZAb9rYeMj1Udz8RXTml68bLSokMEwRTzfviGnSjt/R0MOnmXm+m121eBO4fxWJBECzjZD3pjTJdVpkX/GV7aiFlU/K/xGlRpPP7K1V2c1T9nd7tvuoXv4iGgcLR/2KIzh6W/T3YidglWJnygY9eTekE4FC/9l99RmsCIleCWaqLpEVJhs8SUMcZ+SFqyS6Tloghy5mfAE/1uiL5guDApeAHY5+KnAc= username@email.com

2、将key复制到github的ssh key(个人账户->setting->SSH and GPG keys->new SHH key)中,点击生成 

3、回到项目根目录,更改上传SSH链接

git remote set-url origin git@github.com:**********.git

注意查看.git/config 的链接有没有更改成功

4、要先拉取一遍代码,再提交,就可以了

问题四:Git配置多个公钥,对应不同的账户的代码库,出现的问题

原因:一把公钥只能被一个GITHUB帐号拥有->因此必须为不同的帐号创建公钥,push时需要本地私钥与GITHUB帐号的公钥配对,因此,要在同一台电脑上给两个属于不同帐号的仓库提交时,必须在本地创建两对公/私钥匙,分别把两把公钥给两个帐号,提交时根据要提交的仓库所属帐号选择相应的本地私钥即可

ERROR: Permission to *******.git denied to userName.

fatal: Could not read from remote repository.

Please make sure you have the correct access rights

and the repository exists.

 解决方法:

1、多生成一个公钥,指定名字为:gs_id_rsa,带有pub后缀的是公钥,没有带的是私钥

ssh-keygen -t rsa -C "username@email.com" -f ~/.ssh/gs_id_rsa

2、添加到SSH agent中,两个就两个都添加

ssh-add gs_id_rsa

# 如果提示:Could not open a connection to your authentication agent,则先执行这个命令

ssh-agent bash

3、然后配置生成config文件,没有则生成config 

# 账号1-github

HOST personal

hostname github.com

User git

IdentityFile ~\.ssh\id_rsa

PreferredAuthentications publickey

# 账号2-github

HOST company

hostname github.com

User git

IdentityFile ~\.ssh\gs_id_rsa

PreferredAuthentications publickey

测试 连接是否成功,`ssh -T personal`,  成功则返回 

#成功则返回

Hi persona! You've successfully authenticated, but GitHub does not provide shell access

 4、在项目根目录重新设置url:

git remote set-url origin xxx:xxx/xxxxxxxxx.git

//对比原来的ssh链接: git@github.com:xxxxxxxxx.git

//替换后的: xxx:xxx/xxxxxxxxx.git

就可以愉快的进行了多公钥玩耍了

Git常用操作命令: 

git branch 查看本地所有分支

git status 查看当前状态

git commit 提交

git branch -a 查看所有的分支

git branch -r 查看本地所有分支

git commit -am "init" 提交并且加注释

git push origin master 将文件给推到服务器上

git remote show origin 显示远程库origin里的资源

git checkout --track origin/dev 切换到远程dev分支

git checkout -b dev 建立一个新的本地分支dev

git merge origin/dev 将分支dev与当前分支进行合并

git checkout dev 切换到本地dev分支

git remote show 查看远程库

git add .

git rm 文件名(包括路径) 从git中删除指定文件

git clone git://github.com/schacon/grit.git 从服务器上将代码给拉下来

git config --list 看所有用户

git ls-files 看已经被提交的

git rm [file name] 删除一个文件

git commit -a 提交当前repos的所有的改变

git add [file name] 添加一个文件到git index

git commit -v 当你用-v参数的时候可以看commit的差异

git commit -m "This is the message describing the commit" 添加commit信息

git commit -a -a是代表add,把所有的change加到git index里然后再commit

git commit -a -v 一般提交命令

git log 看你commit的日志

git diff 查看尚未暂存的更新

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,904评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,581评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,527评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,463评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,546评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,572评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,582评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,330评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,776评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,087评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,257评论 1 344
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,923评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,571评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,192评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,436评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,145评论 2 366
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,127评论 2 352