zoukankan      html  css  js  c++  java
  • Git(4):远程仓库

    添加连接远程库

    目前我们使用到的 Git 命令都是在本地执行,如果你想通过 Git 分享你的代码或者与其他开发人员合作。 你就需要将数据放到一台其他开发人员能够连接的服务器上。

    远程仓库可以是Github(可以在官网https://github.com/注册),也可以是自己搭建的Git服务器。

    (1) 用邮箱号注册GitHub账号。(注册后我会创建一个GitTest的Repository)

    由于本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以使用以下命令生成SSH Key。

    $ssh-keygen -t rsa -C "youremail@example.com"

    可以在<C:Usersadmin.ssh>里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。

    (2) 登陆GitHub,点击头像旁的下拉列表,选择“Settings >> SSH and GPG Keys”页面,在Key文本框里粘贴id_rsa.pub文件的内容。

    (3) 为了验证是否成功,输入以下命令

    $ssh -T git@github.com

    (4) 如果没有本地Git目录,则需要自己本地先初始化,再推送到远程仓库。("远程仓库"标志就是origin,这是Git默认的叫法,一看origin这个名字一看就知道是远程库)

    admin MINGW64 /c/GitRepositoryTest/GitTest
    $echo "GitTest line1" >> README.md
    $git init
    $git add README.md
    $git commit -m "Add README.md"
    $git remote add origin git@github.com:lyz170/GitTest.git #添加远程仓库
    $git push -u origin master #push到远程仓库的master分支

    如果有本地Git目录,直接推送到远程仓库即可。

    $git remote add origin git@github.com:lyz170/GitTest.git
    $git push -u origin master

    操作远程仓库的命令

    查看当前的远程库([-v]: 可以看到每个别名的实际链接地址)

    $git remote [-v]

    添加远程仓库

    $git remote add [repository name] [SSH/HTTPS url]

    推送到远程仓库

    $git push [repository name] [branch name]

    删除远程仓库

    $git remote rm [repository name]

    关于<git fetch>和<git pull>的区别

    一旦远程主机的版本库有了更新(Git术语叫做commit),需要将这些更新取回本地,这时就要用到git fetch命令。

    git fetch命令通常用来查看其他人的进程,因为它取回的代码对你本地的开发代码没有影响(该命令并不会覆盖当前本地分支)。所取回的更新,在本地主机上要用[repository name/branch name]的形式读取。比如origin主机的master,就要用origin/master读取。(注意区分命令里的origin master)

    git fetch 有四种基本用法

    $git fetch #更新git remote中所有的远程repository所包含branch的最新commit-id, 将其记录到.git/FETCH_HEAD文件中
    $git fetch [repository name] #更新名称为[repository name]的远程repository上的所有branch的最新commit-id,将其记录
    $git fetch [repository name] [branch name] #更新名称为[repository name]的repository上的[branch name]分支
    $git fetch [repository name] [branch name]:[local branch name] #(3)完成后,再在本地创建[local branch name]本地分支保存远端分支的所有数据。

    取回远程主机的更新以后,可以在它的基础上,使用git checkout命令创建一个新的分支。相当于上面的第4条命令。

    $git checkout -b newBrach origin/master

    也可以使用git merge命令在当前本地分支上合并远程分支

    $git merge origin/master

    git pull命令的作用是,取回远程主机某个分支的更新,再与本地的指定/当前分支合并。

    $git pull [repository name] [branch name]:[local branch name]

    如果远程分支是与当前分支合并,则冒号后面的部分可以省略

    $git pull [repository name] [branch name]

    [总结]

     

  • 相关阅读:
    ural(Timus) 1019 Line Painting
    ACMICPC Live Archive 2031 Dance Dance Revolution
    poj 3321 Apple Tree
    其他OJ 树型DP 选课
    poj 3548 Restoring the digits
    ACMICPC Live Archive 3031 Cable TV Network
    递归循环获取指定节点下面的所有子节点
    手动触发asp.net页面验证控件事件
    子级Repeater获取父级Repeater绑定项的值
    没有列名的数据绑定
  • 原文地址:https://www.cnblogs.com/storml/p/7463216.html
Copyright © 2011-2022 走看看