1、系统maxos,bash 环境配置git 操作github 仓库
2、配置 git 与 github 进行ssh 链接
参考:
3、 步骤2中第一个参考链接中的最后一步:
git remote add origin '仓库路径' #关联远程仓库
如果使用的是ssh 操作github 的方式,需要关联到 ssh 的地址,而不是https的地址
如果本地已经有https 的remote url,需要先删除,然后再添加
git push origin master #推送到远程仓库
下面这个链接讲解的更加详细:
GitHub不再支持密码验证解决方案:SSH免密与Token登录配置 - zhoulujun - 博客园
注意:生成、配置ssh key之后,最关键的是配置远程git仓库地址,到本地git仓库的config中。如果本地因为其他原因配置https的远程仓库地址,一定要先删除,然后再使用上述命令进行配置。这里也是我卡住的地方。
4、参看与设置本地分支与远程分支的关联情况
查看使用的命令参考:git查看本地分支关联(跟踪)的远程分支之间的对应关系,本地分支对应哪个远程分支 - 遥远的绿洲 - 博客园
下面链接中的第3步就是将本地分支和远程分支进行关联的命令
git branch --set-upstream-to=origin/master master
其他本地与远程分支关联还包括:
(1)本地存在某个分支,远程无该分支
(2)本地不存在某个分支,远程存在需要关联track的分支
参考:git本地分支和远程分支如何关联_qq_夏阳的博客-CSDN博客_怎么关联远程分支
----------------------------------------------------------------------------------------------
上面的参考已经比较详细了,这里再凝练一下各个主要步骤:
场景:原来只是一个人在做某项任务,本地有一个自己创建的git仓库,现在希望通过github与多个人进行协作,共同推进任务。
1、登录自己的github账户,创建一个新的仓库,该仓库的名字可以是随便的,不一定需要和本地仓库所在的目录名一致。创建完后,github会显示下面的界面:
2、github上仓库创建好后,将本地仓库与github仓库进行关联,这里选择SSH方式的URL,因为https方式的github好像已经不支持了:
// 远端仓库在本地的默认名称是 origin,即origin指后面的地址
// 将 <user_name> 和 <project_name> 替换为自己的github的用户名和仓库名
git remote add origin git@github.com:<user_name>/<project_name>.git
3、上一个步骤2中我们选择了SSH方式的URL,需要在本地生成SSH公钥和私钥,并且配置自己github账户对应的SSH公钥:
(1) 生成SSH公钥和私钥(直接参考最上面的链接,已经比较详细)
(2) 配置自己github账户的SSH公钥(直接参考最上面的链接,已经比较详细)
(3) 配置本地git仓库对应github仓库的安全相关验证信息:
// <user_name> 和 <user_email> 分别代表用户github的账户名和邮箱
git config --global user.name "<user_name>"
git config --global user.email "<user_email>"
// 可以顺便测试一下是否可以链接到github
ssh -T git@github.com
// 打印如下内容,即表示配置成功
Hi <user_name>! You've successfully authenticated, but GitHub does not provide shell access.
4、推送本地仓库至远端github仓库
git push -u origin master
----------------------------------------------
关于远端仓库名、分支名 与 本地仓库名、分支名的关系和修改等,参考《Git从入门到精通》第10章。