美文网首页
35.6-Git的Push和Clone

35.6-Git的Push和Clone

作者: BeautifulSoulpy | 来源:发表于2020-01-18 08:05 被阅读0次

    2013年,淘宝前端团队开始全面采用 Git 来做项目管理,我也是那个时候开始接触和使用,从一开始的零接触到现在的重度依赖,真是感叹 Git 的强大。

    总结:

    1. 报401,没有权限;

    常用操作

    所谓实用主义,就是掌握了以下知识就可以玩转 Git,轻松应对 90% 以上的需求。以下是实用主义型的 Git 命令列表,先大致看一下:

    git push

    push到服务器
    本地搭建了一个github私服,模拟GitHub http://192.168.142.135:3000/my/test.git

    $ git push origin master
    $ git push origin
    # 指定推送到的远程主机和分支
    # 指定当前分支推送到的主机和对应分支
    $ git push -u origin master # 指定远程默认主机和分支
    $ git push
    # simple方式,默认只推送当前分支到默认关联的远程仓库
    
    
    $ git push -u origin master
    Password:
    Counting objects: 7, done.
    Delta compression using up to 2 threads.
    Compressing objects: 100% (5/5), done.
    Writing objects: 100% (7/7), 583 bytes, done.
    Total 7 (delta 0), reused 0 (delta 0)
    To http://my@192.168.142.135:3000/my/test.git
    * [new branch]
    master -> master
    Branch master set up to track remote branch master from origin.
    
    
    git config

    配置本地用户名和邮箱
    这是个好习惯,建议这时候一定要加上

    $ git config --global user.name "my"
    $ git config --global user.email "my@magedu.com"
    # 这些内容对应~/.gitconfig文件,是 用户级别 的配置文件
    $ cat ~/.gitconfig
    [user]
    name = my
    email = my@magedu.com
    # 命令显示
    $ git config --global user.name
    $ git config --global user.email
    
    

    关联远程版本库
    git remote 列出所有远程仓库
    git remote -v 详细列出所有远程仓库
    git remote add [shortname] [url] 指定一个名称指向远程仓库

    远程版本库名origin,这是个习惯用法,将建立origin和后面url的映射,这些信息保存在.git/config文件的新的段
    [remote "origin"] 中。
    注意: http://my@192.168.142.135:3000/my/test.git 加上用户名,否则push会报401

    git config --system 在 /etc/gitconfig 文件中读写配置
    git config --global 在 ~/.gitconfig 文件中读写配置
    .git/config 这个文件是 版本库级别 设置文件,这里的设置具有最高优先级

    git pull

    将服务器上的最新代码拉取到本地。

    git pull origin daily/0.0.1
    
    git clone

    从 Git 服务器拉取代码。

    建议使用Git的windows客户端的 git bash ,它含有常用ssh命令

    配置本地用户名、邮箱
    $ git config --global user.name "wayne"
    $ git config --global user.email "wayne@magedu.com"
    $ cat ~/.gitconfig
    [user]
    name = wayne
    email = wayne@magedu.com
    
    

    删除windows当前用户.ssh文件夹
    ssh-keygen -t rsa -C "wayne@magedu.com"
    -t 加密算法类型
    -C comment 描述信息

    $ ssh-keygen -t rsa -C "wayne@magedu.com"
    Generating public/private rsa key pair.
    Enter file in which to save the key (/c/Users/Administrator/.ssh/id_rsa): # 直接回车
    
    

    打开gogs的用户设置 -> SSH密钥
    打开公钥文件~/.ssh/id_rsa.pub,将内容贴入“密钥内容”框中,点击“增加密钥”


    SSH连接远程库
    在windows上找一个空目录,执行下面的克隆命令。
    注意,第一次使用ssh连接有提示,敲入yes。

    $ git clone git@192.168.142.135:my/test.git
    # git clone https://github.com/gafish/gafish.github.com.git
    Cloning into 'test'...
    remote: Counting objects: 28, done.
    
    

    相关文章

      网友评论

          本文标题:35.6-Git的Push和Clone

          本文链接:https://www.haomeiwen.com/subject/dtcractx.html