Skip to content

在 Ubuntu 14 上使用 Git #3

Description

@muxfe

在 Ubuntu 14 上使用 Git

之前一直用 GitHub for Windows , GUI 帮我搞定了一切,不用关心背后发生了什么,就可以随意的 commit 和 push 代码。现在换到 Linux 环境之后发现没有那么方便了,全都要自己搞,虽然麻烦,但是学到不少东西。技术的事情还是偷不得懒的。

安装 Git

$ sudo apt-get install git

安装很简单,用 Ubuntu 的 apt-get 就可以了。

身份认证

安装了 git 还是不能将代码 push 到自己的 GitHub 上面,因为还没有认证。GitHub 提供了两种主要安全的连接方式,ssh 和 https 。GitHub 官方推荐使用 https.

  • ssh 设置 ssh-key 比较麻烦,但后面使用就方便了
  • https 使用用户名和密码进行身份认证, 每次 push 都要输入

SSH 认证

SSH 使用 RSA 非对称加密算法来加密信息,下面生成与 GitHub 服务器通信认证所需的密钥。
Generateing SSH key

$ ssh-keygen -t rsa -b 4096 -C "grzpjdyc1653@126.com"

保存 key 的位置选择默认位置 ( ~/.ssh/ ) 即可,直接按 Enter 。 然后需要为这个 key 设置一个passphrase(密码),后面会用到。最后就得到一个 key 了。

加入 key 到 ssh-agent

ssh-add ~/.ssh/id_rsa

加入 key 到 GitHub 账户

首先复制 key

$ sudo apt-get install xclip

$ xclip -sel clip < ~/.ssh/id_rsa.pub

然后找到 GitHub -> Profile -> Settings -> SSH keys -> Add SSH key , 将剪贴板的内容复制到 key 里。保存即可。

验证是否添加成功

$ ssh -T git@github.com

出现 Hi, username! 字样就是认证成功了。

使用 SSH 连接 push 代码

cd repo
$ git remote set-url origin git+ssh://git@github.com/[username]/[repo].git 

这样就不用每次 push 都要输入用户名和密码了。

提交和同步

将所有修改的文件加入缓存区

$ git add -A

提交修改

$ git commit -m 'message'

推送到远程版本库

$ git push

设置 push.default

$ git config --global push.default matching
$ git config --global push.default simple
  • matching All branches
  • simple Only the current branch

从远程版本库同步

$ git pull

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions