Git 远程仓库
1 生成SSH key
ssh-keygen -t rsa -C "email@example.com" //创建ssh key
在 /Users/username/.ssh/ 目录下 生成两个文件
-
id_rsa 私钥,不能泄露
-
id_rsa.pub 公钥,可以公开
在Github上添加公钥:GitHub - Account settings - SSH keys -Add SSH Key ,粘贴id_rsa.pub文件里的内容
2 添加(关联)远程库
情景:本地创建了一个库,Github上也创建了一个库,并且让这两个库进行远程同步。
在Github上创建了一个库,地址:git@github.com:github_name/repo_name.git,关联远程库
git remote add origin git@github.com:github_name/repo_name.git //Git自动将远程仓库的名称设置为标识符origin
关联后,使用命令推送本地master分支到远程库master分支。
git push -u origin master
此后工作区内容有修改,每次提交,使用命令
git push origin master
注意:第一次推送有 -u
Git不但会把本地的master分支内容推送到远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
3 从远程库克隆
情景:本地没有库,远程库已经准备好了,用命令git clone克隆一个本地库
git clone git@github.com:github_name/repo_name.git
此操作的结果:git clone命令后我们会默认处于master分支下,同时系统会自动将origin设置成该远程仓库的标识。
当前本地仓库的master分支与github端远程仓库(origin)的master分支在内容上完全相同。
从远程库拉取最新代码
场景:在当前分支上进行同步操作;
作用:将指定远程分支同步到当前本地分支;
git pull origin master //origin远程主机名 master分支
4 分支
情景:在进行多个并行作业时,我们会用到分支。每个分支都有自己的最新代码。master分支是Git默认创建的分支。
git branch //显示分支列表 git checkout -b feature-A // 本地创建并切换到feature-A分支 git checkout master //切换到master分支 git push -u origin feature-A //推送feature-A分支到远程的feature-A分支 // 将远程仓库(origin)feature-A分支获取到本地feature-A分支 git checkout -b feature-A origin/feature-A
5 协作开发
各自从远程克隆一份。