• GitHub 建立远程仓库


    终端所有信息:

    Last login: Fri Aug 14 08:58:01 on console

    wuxiaoyuan:~ lan$ ls -al ~/.ssh

    ls: /Users/lan/.ssh: No such file or directory

    wuxiaoyuan:~ lan$ mkdir .ssh

    wuxiaoyuan:~ lan$ cd /Users/lan/.ssh 

    wuxiaoyuan:.ssh lan$ ssh-keygen -t rsa -b 4096 -C "1149779588@qq.com"

    Generating public/private rsa key pair.

    Enter file in which to save the key (/Users/lan/.ssh/id_rsa): 

    Enter passphrase (empty for no passphrase): 

    Enter same passphrase again: 

    Your identification has been saved in /Users/lan/.ssh/id_rsa.

    Your public key has been saved in /Users/lan/.ssh/id_rsa.pub.

    The key fingerprint is:

    d6:62:85:4f:43:b1:60:4b:85:be:8d:43:3b:48:04:0c 1149779588@qq.com

    The key's randomart image is:

    +--[ RSA 4096]----+

    |  Eo..  +o+.     |

    |    . .o.= .     |

    |     . .o =      |

    |      . o= .     |

    |     . oS=o      |

    |      .o*..      |

    |         o       |

    |                 |

    |                 |

    +-----------------+

    wuxiaoyuan:.ssh lan$ pbcopy < ~/.ssh/id_rsa.pub

    wuxiaoyuan:.ssh lan$ cat id_rsa.pub

    ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDIUvEB2QI2ygbbnIkbKCBqTq1eYLb+uQV4ZFioNOqF1DNHh7tIFGl5UPEuFL+hqhz4rWANjisEv3zaBgXCgUlFPP9jOy0QlUN03K+nVVWzj++Jte0e3drD1MDwOAyV1ShD6sy8gsQp9mplnUn0QqS3zdlVe2otrSpfGPpPnD5L/Sv7uV27xszv8vJd73p2Wyayn4cIQ3rHmmvdOWbeQbvN54nGZBUFFt6KIdwLAQ0+ZeLCJavYoL8Ts2PsyzzSPmyHWUfneCpPrBY8CDkYQC3tsftt7ouKSNFURx/hU5eDzdAgu20pNUPasAZLk76VedhhijBU2i9P5OyQXtuwraTDDv2ih5rwvXKG7KgSMdA2UALDOtPF/mF2rftWY4XR7YzOXnsT+i4BXEVs+wmQ0JBMAyo05dCVzIVxglMc8ZEmCOATqFEgbtmqu+eX1DzudTSvQWsp8oO/he2J5g895yEKAXadiXB9VJKsL7Alaf2gNcmT+zD2/MakGtZJKvXDA7x99Ll2aWbbUtJkgpl1F6LFm7MrFG5xshj8cx7JMgq8muTcI+NZiW5c2NNA+6I/5zJwqXyUzhc6Ehl0ek4l6E8khedsywhcmgQQjwd3nXbDqQA1+of3ADCIOCGnvS1ARi3lgRTSFVBi+HwN35a3ZP3lWn+sFgkrPsVbBkiNzd9YWw== 1149779588@qq.com

    wuxiaoyuan:.ssh lan$ ssh -T git@github.com

    The authenticity of host 'github.com (192.30.252.129)' can't be established.

    RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.

    Are you sure you want to continue connecting (yes/no)? 

    Host key verification failed.

    wuxiaoyuan:.ssh lan$ ssh -T git@github.com

    The authenticity of host 'github.com (192.30.252.128)' can't be established.

    RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.

    Are you sure you want to continue connecting (yes/no)? yes

    Warning: Permanently added 'github.com,192.30.252.128' (RSA) to the list of known hosts.

    Hi wusang! You've successfully authenticated, but GitHub does not provide shell access.

    wuxiaoyuan:.ssh lan$ cd /Users/lan/Desktop/张三 

    wuxiaoyuan:张三 lan$ git clone https://github.com/wusang/lanou02.git

    Cloning into 'lanou02'...

    remote: Counting objects: 5, done.

    remote: Compressing objects: 100% (4/4), done.

    remote: Total 5 (delta 0), reused 0 (delta 0), pack-reused 0

    Unpacking objects: 100% (5/5), done.

    Checking connectivity... done.

    wuxiaoyuan:张三 lan$ git status

    fatal: Not a git repository (or any of the parent directories): .git

    wuxiaoyuan:张三 lan$ cd /Users/lan/Desktop/张三/lanou02 

    wuxiaoyuan:lanou02 lan$ git status

    On branch master

    Your branch is up-to-date with 'origin/master'.

     

    Changes to be committed:

      (use "git reset HEAD <file>..." to unstage)

     

    new file:   lanou02/lanou02.xcodeproj/project.pbxproj

    new file:   lanou02/lanou02.xcodeproj/project.xcworkspace/contents.xcworkspacedata

    new file:   lanou02/lanou02/AppDelegate.h

    new file:   lanou02/lanou02/AppDelegate.m

    new file:   lanou02/lanou02/Base.lproj/LaunchScreen.xib

    new file:   lanou02/lanou02/Base.lproj/Main.storyboard

    new file:   lanou02/lanou02/Images.xcassets/AppIcon.appiconset/Contents.json

    new file:   lanou02/lanou02/Info.plist

    new file:   lanou02/lanou02/ViewController.h

    new file:   lanou02/lanou02/ViewController.m

    new file:   lanou02/lanou02/main.m

    new file:   lanou02/lanou02Tests/Info.plist

    new file:   lanou02/lanou02Tests/lanou02Tests.m

     

    wuxiaoyuan:lanou02 lan$ open.

    -bash: open.: command not found

    wuxiaoyuan:lanou02 lan$ open .

    wuxiaoyuan:lanou02 lan$ git add .

    wuxiaoyuan:lanou02 lan$ git commit -am "添加了工程"

    [master 41b1085] 添加了工程

     13 files changed, 762 insertions(+)

     create mode 100644 lanou02/lanou02.xcodeproj/project.pbxproj

     create mode 100644 lanou02/lanou02.xcodeproj/project.xcworkspace/contents.xcworkspacedata

     create mode 100644 lanou02/lanou02/AppDelegate.h

     create mode 100644 lanou02/lanou02/AppDelegate.m

     create mode 100644 lanou02/lanou02/Base.lproj/LaunchScreen.xib

     create mode 100644 lanou02/lanou02/Base.lproj/Main.storyboard

     create mode 100644 lanou02/lanou02/Images.xcassets/AppIcon.appiconset/Contents.json

     create mode 100644 lanou02/lanou02/Info.plist

     create mode 100644 lanou02/lanou02/ViewController.h

     create mode 100644 lanou02/lanou02/ViewController.m

     create mode 100644 lanou02/lanou02/main.m

     create mode 100644 lanou02/lanou02Tests/Info.plist

     create mode 100644 lanou02/lanou02Tests/lanou02Tests.m

    wuxiaoyuan:lanou02 lan$ git push

    warning: push.default is unset; its implicit value is changing in

    Git 2.0 from 'matching' to 'simple'. To squelch this message

    and maintain the current behavior after the default changes, use:

     

      git config --global push.default matching

     

    To squelch this message and adopt the new behavior now, use:

     

      git config --global push.default simple

     

    When push.default is set to 'matching', git will push local branches

    to the remote branches that already exist with the same name.

     

    In Git 2.0, Git will default to the more conservative 'simple'

    behavior, which only pushes the current branch to the corresponding

    remote branch that 'git pull' uses to update the current branch.

     

    See 'git help config' and search for 'push.default' for further information.

    (the 'simple' mode was introduced in Git 1.7.11. Use the similar mode

    'current' instead of 'simple' if you sometimes use older versions of Git)

     

    Username for 'https://github.com': wusang

    Password for 'https://wusang@github.com': 

    Counting objects: 24, done.

    Delta compression using up to 4 threads.

    Compressing objects: 100% (21/21), done.

    Writing objects: 100% (23/23), 8.51 KiB | 0 bytes/s, done.

    Total 23 (delta 3), reused 0 (delta 0)

    To https://github.com/wusang/lanou02.git

       c054ac6..41b1085  master -> master

    wuxiaoyuan:lanou02 lan$ git status

    On branch master

    Your branch is up-to-date with 'origin/master'.

     

    Changes not staged for commit:

      (use "git add <file>..." to update what will be committed)

      (use "git checkout -- <file>..." to discard changes in working directory)

     

    modified:   lanou02/lanou02/ViewController.h

    modified:   lanou02/lanou02/ViewController.m

     

    no changes added to commit (use "git add" and/or "git commit -a")

    wuxiaoyuan:lanou02 lan$ git add .

    wuxiaoyuan:lanou02 lan$ git commit -am "从暂存库添加到本地仓库,添加了1111"

    [master f27a890] 从暂存库添加到本地仓库,添加了1111

     2 files changed, 4 insertions(+)

    wuxiaoyuan:lanou02 lan$ git push

    warning: push.default is unset; its implicit value is changing in

    Git 2.0 from 'matching' to 'simple'. To squelch this message

    and maintain the current behavior after the default changes, use:

     

      git config --global push.default matching

     

    To squelch this message and adopt the new behavior now, use:

     

      git config --global push.default simple

     

    When push.default is set to 'matching', git will push local branches

    to the remote branches that already exist with the same name.

     

    In Git 2.0, Git will default to the more conservative 'simple'

    behavior, which only pushes the current branch to the corresponding

    remote branch that 'git pull' uses to update the current branch.

     

    See 'git help config' and search for 'push.default' for further information.

    (the 'simple' mode was introduced in Git 1.7.11. Use the similar mode

    'current' instead of 'simple' if you sometimes use older versions of Git)

     

    Counting objects: 11, done.

    Delta compression using up to 4 threads.

    Compressing objects: 100% (6/6), done.

    Writing objects: 100% (6/6), 607 bytes | 0 bytes/s, done.

    Total 6 (delta 4), reused 0 (delta 0)

    To https://github.com/wusang/lanou02.git

       41b1085..f27a890  master -> master

    wuxiaoyuan:lanou02 lan$

    与git相配合
    简单步骤:
    》1.注册一个github账号
    》2.配置SSH Keys, 只要配置了SSH Keys就可以和github无缝衔接
     
    》点击昵称来到个人主页
    》 点击主页中的设置(setting)
    》 点击SSH Keys
    》点击 generating SSH keys
     
    》1.检查本地的ssh keys
    在“用户目录”下 ls -al ~/.ssh
    2.如果文件夹不存在需要手动创建一个
    mkdir .ssh
     
    3.根据github的提示2生成ssh keys
    在.ssh目录下执行 ssh-keygen -t rsa -C "your_email@example.com”
    输入完成之后连续按下回车, 知道出现牛逼的图形位置
    4.生成完公钥和私钥之后输入
    ls -la查看是否生成成功   id_rsa(私钥) id_rsa.pub(公钥)
    5.根据提示3获得公钥
    pbcopy < ~/.ssh/id_rsa.pub
    6.点击 setting —》 ssh key —>add ssh key
    将刚才获取到得公钥添加进去
     
    7.更具github第4步提示, 验证公钥
    验证成功网页上的灰色圆点会变成绿色
     
    8.拷贝到公钥之后打开github主页
    》点击仓库(Repositories)
    》再点击new来到github创建仓库界面
     
    9.通过github提供的地址下载一个空得仓库到本地
    》创建一个新的项目到本地仓库文件夹中
    》利用Xcode提交代码到github
    》注意: 要求输入用户名密码时候, 输入的是github上显示的昵称而不是登录账号
     
     
    详细步骤:
    在桌面建立两个空文件”张三””李四"(模拟多人开发)
    1.进入https://github.com (先要注册githup个人账号) 
    2.
    点击进入
     
    进入后界面有step1~step5 参照操作
    终端命令行:
    1.step1 用来确认状态: ls -al ~/.ssh(输出结果表明  张三文件夹没有.ssh文件)
     建立.ssh文件:
    mkdir .ssh
    cd 路径
     
     
    2.生成公钥
    step 2: ssh-keygen -t rsa -b 4096 -C "1149779588@qq.com"
     
    3.Step 3: Add your key to the ssh-agent  
    Step 4: Add your SSH key to your account
    Step 5: Test the connection
     
     
     
     
    多人开发情况:
    另一个人”李四”现在桌面的文件夹是空的
    终端:
    找到李四文件夹路径:cd 拖过来的文件夹路径
    clone 仓库网址:git clone URL网址
    打开李四原来的空文件夹,发现已经克隆下来了工程
     
    拉取其他人已经提交的代码 
    终端:
    找到文件夹下的工程路径: cd /Users/lan/Desktop/李四/lanou02
    拉取工程: git pull
     
    打开李四文件夹下的工程,发现已经同步到张三修改后的代码
     
     
  • 相关阅读:
    推荐随笔
    搭建http服务
    python之numpy和pandas
    eclipse项目打包
    keras安装
    eclipse设置快速提示符
    linux常用命令
    Webpack3 从入门到放弃
    【ES6】Generator+Promise异步编程
    【Vue】删除数组元素,导致剩余元素被重新渲染
  • 原文地址:https://www.cnblogs.com/wusang/p/4729440.html
Copyright © 2020-2023  润新知