zoukankan      html  css  js  c++  java
  • 使用GitHub

    什么是Git

    Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。Git是Linux Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。

    什么是GitHub

    GitHub是一个基于网络的,给使用以Git为版本控制的项目提供的托管服务。使用Ruby on Rails编写,主要开发人员有Chris Wanstrath, PJ Hyett, and Tom Preston-Werner.GitHub即提供商业化的使用,也为开源项目提供免费的账户。根据在2009年对Git用户的调查,GitHub是最流行的Git托管网站。

    如何使用GitHub

    首先你必须安装Git和申请GitHub的一个账户,配置Git

    1
    2
    3
    $ git config --global user.name "你的名字,如test"
     
    $ git config --global user.email "你的邮箱,如test@test.com"

    对于你为Git设置的邮件地址应该与您的GitHub的账户设置的默认邮箱地址相同,如果不同,你需要做如下操作

    • 登录你的GitHub帐号
    • 进入Account Settings
    • 点击左侧边栏的“Emails”选项
    • 点击“Add another email address”
    • 输入一个新邮件地址并且点击“Add”
    • 删除以前的邮件地址

    如果你希望你的邮件地址被隐藏,你需要这样做:

    Git在你做一些提交操作时需要提供身份证明,但是你可以通过伪造邮件地址来隐藏你的真实的email信息。Git并不关心邮件地址是不是合法。
    需要注意的是,尽管Git不在意,但是如果你没有提供有效的邮件地址,一些项目可能不会接受你的提交操作。所在在做下面的操作前你需要先确定你的项目的一些条款。
    Github并没有收到多少关于垃圾邮件被发送到Git使用的邮箱的报告。但是如果你担心这些,以下操作应该能帮助你解决这些问题。
    一些人可能想要隐藏他们的邮件地址,常用的方法是使用“user@server”来代替提供完整的主机名的电子邮件。如果你想要这样设置并且仍能够让你的提交操作连接到你的GitHub账户,遵照这些步骤来:
    步骤1:为Git配置伪造的邮件地址
    不使用完整的电子邮件(例如,“user@server.com”),你可以配置Git的“user.email”为截断的版本,它将仍然作为你的唯一标识符。

    1
    2
    $ git config --global user.email "user@server"
    #设置邮箱地址为截断的值

    需要注意的是:使用 –global 标记将为你所有的Git项目配置伪造的邮箱地址。如果在某一个项目文件下,你可以使用不带 –global 标记的命令来为这个项目覆盖全局的配置。

    步骤2:向你的GitHub账户添加伪造的邮箱地址

    • 登录你的GitHub帐号
    • 进入Account Settings
    • 点击左侧边栏的“Emails”选项
    • 点击“Add another email address”
    • 输入一个邮件地址(如上面所说的.”user@server”)并且点击“Add”

    步骤3:现在在你提交操作时可以不用担心垃圾邮件了

    这些操作只对操作结束后的提交操作有效,如果你想清除以前的提交记录,你需要重写你的以前的提交记录。最见简单的办法是:

    >使用“git filter-branch重写记录

    >强制推送新的历史记录

    重写记录是不建议的操作,你应该只在需要的时候做这个操作。

    缓存密码

    最后的操作是,我们要告诉git我们并不想每次与远程服务器交互时都需要输入用户名和密码(你需要git版本1.7.10或更新的版本来使用credential)。

    要使用这个操作,你需要启用credential helper,以使得git在内存中保存你的密码一段时间。

    1
    2
    3
    $ git config --global credential.helper cache
     
    #Set git to use the credential memory cache

    默认情况下会缓存你的密码15分钟,我们可以更改它

    1
    2
    3
    $ git config --global credential.helper ‘cache --timeout=3600’
     
    #1小时的缓存

    注意:credential.helper仅仅在你clone HTTPS repo URL时候有效。如果你使用SSH repo URL,SSH keys被用来验证。

    如何生成SSH Keys

    如果你打算不使用HTTPS方法,我们可以使用SSH keys在你的电脑和GitHub之间建立一个安全的链接。下面的步骤会告诉你如何生成一个SSH key并且将他们添加到你的GitHub账户中。

    步骤1:检查SSH keys

    已经存在一个你想使用的密钥对,打开终端并且运行:

    1
    2
    3
    $ cd ~/.ssh
     
    #检查在你的用户目录中是否已经存在一个叫”.ssh"的目录

    如果它显示“No such file or directory”,跳到步骤3,否则进入步骤2.

    步骤2:备份并删除已存在的SSH keys

    因为已经存在一个SSH目录,你需要备份它并且删除它

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    $ ls
     
    # Lists all the subdirectories in the current directory
     
    config    id_rsa    id_rsa.pub    known_hosts
     
    $ mkdir key_backup
     
    # Makes a subdirectory called "key_backup" in the current directory
     
    $ cp id_rsa* key_backup
     
    # Copies the id_rsa keypair into key_backup
     
    $ rm id_rsa*
     
    # Deletes the id_rsa keypair

    步骤3:生成一个新的SSH key

    我们使用默认设置,当叫我们输入一个保存key的文件时,直接点击enter

    1
    2
    3
    4
    5
    6
    7
    $ ssh-keygen -t rsa -c "your_email@youremail.com"
     
    #使用指定的邮件地址(如test@test.com)生成一个新的ssh key
     
    Generateting public/private rsa key pair.
     
    Enter file in which to save the key(/home/you/.ssh/id_rsa);

    现在你需要输入passphrase(相当于密码之类的东西)

    1
    2
    Enter passphrase (empty for no pass[hrase):[Type a passphrase]
    Enter same passphrase again: [Type passphrase again]

    现在终端应该显示像下面的东西

    1
    2
    3
    4
    Your identification has been saved in /home/you/.ssh/id_rsa.
    Your public key has been saved in /home/you/.ssh/id_rsa.pub.
     
    The key finerprint is 01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@youremail.com

    步骤4:添加SSH key至GitHub

    运行如下命令复制key到粘帖板

    1
    2
    3
    4
    5
    6
    7
    $ sudo apt-get install xclip
     
    #Downloads and installs xclip
     
    $ xclip -sel clip < ~/.ssh/id_rsa.pub
     
    #复制id_rsa.pub文件中的内容到粘帖板中
    • 进入你的 Account Settings
    • 点击左侧的 SSH Keys
    • 点击 “Add SSH Key”
    • 粘帖你的key到“key”的输入框中
    • 点击“Add key”
    • 输入你的GitHub密码来确认这次操作
    步骤5:测试
    通过SSH连接到GitHub。当你到这步时,你会被要求用你的密码来确认这次操作,这个密码就是你前面使用到的passphrase。不要改变“git@github.com”,这个是固定的。
    1
    2
    $ ssh -T git@github.com</div>
    #通过ssh 连接到github
    你可能看到如下警告:
    1
    2
    3
    4
    The authenticity of host "github.com(207.97.227.239)' can't be
    established.RAS key fingerprint is
    16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.Are you sure youwant to
    continue connection(yes/no)?
    不用担心,输入“yes”
    如果用户名是正确的,你成功的建立了你的SSH key。
  • 相关阅读:
    CString常用方法简介
    @PostConstruct与@PreDestroy
    Servlet知识
    Extjs ——radiogroup子元素宽度调整
    JS的Document属性和方法
    sql server
    C#中的结构,练习
    datagridview实现复制粘贴
    VS.NET2010水晶报表安装部署[VS2010]
    C#中基础知识积累
  • 原文地址:https://www.cnblogs.com/hwpayg/p/2776101.html
Copyright © 2011-2022 走看看