Git 远程协作

命令

clone fetch pull post

  • git clone https://github.com/coder352/test.git
  • 在远程项目中增加一个test.txt的文件,写入”add some texts”
  • cd test/
  • git fetch
  • git log –oneline –decorate –graph –all:显示当前分支没有指向fetch后的commit,需要更新
  • git merge origin/master:产生一个fastforword的merge
  • git lol:HEAD已经指向了最新的提交
  • vim test.txt:编辑本地文件,添加一行”add some local texts”
  • git add test.txt
  • git commit -m “add some local texts in test.txt”
  • 然后在github的项目中的test.txt中再添加”add some remote”,
  • git push:提示服务器有一些本地没有的历史记录,可能会覆盖
  • git pull:实际上是fetch 和 merge的合并,但是有冲突
  • vim test.txt:把不需要的数据删掉,保存起来
  • git add test.txt
  • git commit:不修改提交信息,直接退出,本地历史就是最新的
  • git push
  • 服务器上的和本地上的就相同了
  • 测试能分享的带注解的tag
  • git tag -a V0 -m”tag for v0”
  • git push:默认不把tag推送到远程仓库中的
  • git push –tags:就能把刚才创建的tag放到github上,并且能看到
  • 在远程仓库中创建一个新的分支:feacher,并且和master切换一下,最后切换回master
  • git pull:获取代码仓库最新的数据
  • 也可以用 git pull origin feacher:只更新feacher分支
  • 同样git fetch origin feacher:也可以,只是服务器有更新时,要手动merge一下
  • vim test.txt:添加一行”add some texts on master”
  • git add test.txt
  • git commit -m “add some texts on master”
  • git checkout feacher
  • git push origin master:将master分支单独提交到服务器上
  • 想把本地feacher分支删掉,然后把服务器上的feacher也删掉
  • git checkout master
  • git branch -d feacher:删掉分支,在本地
  • git push –delete origin feacher:删除服务器上的分支
  • 还有一种方式删除远程的分支
  • git push origin :feacher:推送一个空的分支替代服务器上的分支

相关设置

GitHub上fork项目

  • git checkout -b feature
  • vim test.txt:添加”add some feature texts”
  • git add test.txt
  • git commit -m “add some feature texts”
  • *

创建SSH keys

  • 在终端输入:
  • ssh-keygen -t rsa -C “[email protected]
  • 提示输入一个保存key的路径,默认(/c/Users/Administrator/.ssh/id_rsa)的就行
  • 提示输入密码,输入SSH的密码,而不是GitHub的登陆密码,可以相同,也可以再想一个新的密码
  • 确认密码
  • 用ssh-agent保存SSH登陆密码,这样就不用每次都输入密码
  • ssh-agent bash //先执行这句换,否则可能会报Could not open a connection to your authentication agent的 错误
  • //eval “$(ssh-agent -s)” //Linux输入
  • eval “ssh-agent -s” //Windows用户输入
  • ssh-add ~/.ssh/id_rsa
  • 输入SSH的密码,然后就保存起来了
  • vim ~/.ssh/id_rsa.pub //将里面的keys放到github中即可
  • 验证keys:
  • ssh -T [email protected]
  • 输入SSH的密码
  • 显示”Hi code352! You have successfully authenticated”,就算完成了

上传Github

  • echo “# jvim” >> README.md
  • git init
  • git add README.md
  • git commit -m “first commit”
  • git remote add origin https://github.com/coder352/jvim.git
  • git push -u origin master

你可能感兴趣的:(Git 远程协作)