1. 生成ssh key
ssh-keygen -t rsa -C "xxx@yyy.com"
-
xxx@yyy.com 为github账户对应的邮箱
-
默认在家目录下的.ssh文件夹下面生成id_rsa(私钥)和id_rsa.pub(公钥),公钥给别人,私钥留给自己
-
别人要访问的时候会拿到公钥来访问,如果可以匹配,则可以进行操作,公钥放在github上,则可以鉴权
-
将id_rsa.pub里面的内容拷贝放到 gitbub---> Settings--->SSH and GPG keys
2. git clone
git clone git@github.com:xxx
- git@github.com:xxx 为github仓库对应的ssh链接,之所以不选用https,是因为每次都需要输入用户名和密码验证,采用ssh方式则可以事先配置好密钥对
3. git add
git add .
git add file1 file2
修改或新增了文件,都需要git add,可以add所有文件或者仅add修改的文件,Git会自动识别
4. git commit
git commit -m "description"
提交修改到本地,此时若未设置git操作的email或者name,则会提示需要设置。
扩展小知识
git config [<option>]
使用git需要配置本地进行git操作的email和name,
若是设置email与github的账户一致,则自动匹配提交的用户name为github账户的用户名;
若随意设置email及name,此email与github账户不一致,则显示commit的用户为所设置的name
5. git push
git push [origin/master]
将本地提交的代码提交到服务器上的仓库,若未指定分支,则是push到当前分支。
$$$ 本地创建Git项目推送到远程分支
1: git init //创建一个本地新仓库
2: git add . //添加新建的文件
3: git commit -m "description" //提交到本地
4: git remote add origin git@github.com:abc/aaa.git // 为对应的远程仓库添加标签为origin(也可设置为其他昵称)
5: git push -u origin master //推送到标签为origin对应的master分支,并将其设置为默认主机
//********扩展
1: git push -f origin master //强制推送,会覆盖原先代码,慎用
2: git remote remove origin //删除github标签
3: git remote set-url origin git@github.com:abc/bbb.git //修改origin标签对应的地址
4: git remote rename origin coding //修改origin标签名为coding
$$$ 分支操作
1: git branch dev //创建本地库dev分支
2: git checkout dev // 切换到dev分支
3: git push origin dev // 推送到origin地址的dev分支上,此时会直接在远程新建dev分支
4: git checkout master //切换到master分支
5: git merge dev //合并dev的修改到本地的master分支
6: git push origin dev //推送到远程
- git branch -a 查看所有分支信息
蓝色代表本地分支,红色代表远程分支,*代表当前所处的分支 - git push -u origin dev
为origin的dev设置push权限,这样后续处于dev分支时可以直接git push
$$$ 冲突
git clone <版本库网址> <本地目录>
上述为clone一个远程版本库到本地指定目录,若不指定本地目录,则默认与远程主机版本库同名。
- merging状态时发生冲突,自动合并失败,此时需要打开发生冲突的文件,并手工修改,再次add ,commit,push
网友评论