(1) 创建同名本地库和远程库
或者可以参考第(6)部分,直接使用clone命令。
Git 初始化本地库命令:
// 在本地同名文件夹下使用如下命令 git init
(2) 复制GitHub上远程仓库地址
这里如:https://github.com/jianggc/git-github.git
(3)在本地创建远程库地址别名
- 添加命令如下
git remote add origin https://github.com/jianggc/git-github.git
- 查看命令如下
git remote -v
- 其他命令如下
$ git remote [选项] add prune rename set-head show get-url remove set-branches set-url update
(4)从远程仓库拉取
假如在GitHub上创建远程仓库的时候,初始化了README.md。那么在推送前首席要拉取到本地:
git pull --rebase origin master #拉取README.md git pull origin master # 拉取基本命令
(5)将本地推送到远程库
git push origin master # 保证本地有新文件哦
需要登录账号:
如果远程仓库有README.md,需要先拉取下来:
推送结果:
(6)从远程库克隆到本地
- 命令
git clone[远程地址] #git clone https://github.com/jianggc/git-github.git
- 效果
- 完整的把远程库下载到本地;
- 创建origin 远程地址别名;
- 初始化本地库。
(7)邀请成员加入
邀请后,对方将会收到邮件:
成员加入后,就有读写的权限。
(8)详解拉取
核心思想:pull=fetch+merge
git fetch [远程库地址别名] [远程分支名] git merge [远程库地址别名/远程分支名] git pull [远程库地址别名] [远程分支名]
(9)解决冲突
注意事项 :
- 如果不是基于GitHub 远程库的最新版所做的修改,不能推送,必须先拉
取。 - 拉取下来后如果进入冲突状态,则按照“分支冲突解决”操作解决即可。
(10)跨团队协作
第一步:登录账号janehl,访问https://github.com/jianggc/git-github/,然后进行fork到janehl自己的远程仓库,如下:
第二步:janehl克隆到本地,修改然后推送到自己的远程。
第三步 :janehl–Pull Request
第四步:切回jianggc账号,点击pull requests.
如果janehl被邀请进团队成员,则可以进行merge,如下图:
如果janehl只是外部人员,进行跨团队合作,则如下图:
jianggc可以查看外部人员janehl的提交和改变详情:
jianggc合并代码:
最后再将远程库中的修改拉取到本地:
(11)SSH 免密登录
进入当前用户的家目录
$ cd ~
删除.ssh 目录
$ rm -rvf .ssh
运行命令生成.ssh 密钥目录
$ ssh-keygen -t rsa -C atguigu2018ybuq@aliyun.com
注意:这里-C 这个参数是大写的C
进入.ssh 目录查看文件列表
$ cd .ssh $ ls -lF
查看id_rsa.pub 文件内容
$ cat id_rsa.pub
复制id_rsa.pub 文件内容,登录GitHub,点击用户头像→Settings→SSH and GPG
keys-New SSH Key-输入复制的密钥信息。
回到Git bash 创建远程地址别名
git remote add origin_ssh git@github.com:jianggc/git-github.git
推送文件进行测试 :