【Github】SSH连接Github上传项目(包含协作项目)
SSH连接Github上传项目的步骤
前置
Git的安装、Github的注册等这里不介绍了,以下内容要在git bash中完成(Windows系统),命令行就可以(Linux系统)
配置Git用户信息
1 | git config --global user.name "Github账号用户名" |
配置密钥
输入以下指令:
1 | ssh-keygen -t rsa -b 4096 -C Github账号邮箱 |
如果需要修改密钥存放在系统中的位置,根据弹出内容修改即可,如果直接回车则存放在~/.ssh
,公钥为id_rsa.pub
,私钥为 id_rsa
(Linux系统)依次输入以下指令打开文件:
1 | eval "$(ssh-agent -s)" |
(Windows系统)在C:\user\xxx\.ssh\
中找到id_rsa.pub
,打开文件:
将文件中的内容复制下来,在Github个人信息的Settings里面:
添加到SSH里就可以了:
创建项目并连接
在Github上创建新项目,复制下它的SSH连接(项目主页Code下拉里的),git@github.com:xxx.git
,在你自己本地项目的文件夹里打开命令行(Windows下右键Git Bash):
1 | git init |
或者,不用上面的代码,直接git clone git@github.com:xxx.git
也可以。
这时候输入git remote -v
应该会显示下面两行:
1 | origin git@github.com:用户名/项目名.git (fetch) |
即成功连接了
拷贝老项目到自己的新项目
1 | git clone git@github.com:xxx.git |
xxx
是老项目,yyy
自己的项目
输入git remote -v
,会出现一行以(fetch)
结尾,一行以(push)
结尾。如果在set-url
之前,二者前面的github地址是一样的,而进行过上述最后一行代码后,二者就不一样了,fetch来自老项目,push来自新项目
1 | git checkout -b 本地分支名 origin/远程分支名 |
增加项目协作者
度娘说,一种方式是用fork+pull request,另一种是加协作者,前者看着有些复杂,这里说后者。
在项目的settings-collaborators中添加用户,对方同意邀请。
协作者在配置Git用户信息后,(可选配置密钥通过ssh连接项目),就可以使用常用命令了!