在 Ubuntu 14 上使用 Git

在 Ubuntu 14 上使用 Git

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

安装 Git

1
$ 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

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

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

加入 key 到 ssh-agent

1
ssh-add ~/.ssh/id_rsa

加入 key 到 GitHub 账户

首先复制 key

1
2
$ sudo apt-get install xclip
$ xclip -sel clip < ~/.ssh/id_rsa.pub

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

验证是否添加成功

1
$ ssh -T git@github.com

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

使用 SSH 连接 push 代码

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

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

提交和同步

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

1
$ git add -A

提交修改

1
$ git commit -m 'message'

推送到远程版本库

1
$ git push

设置 push.default

1
2
$ git config --global push.default matching
$ git config --global push.default simple

  • matching All branches
  • simple Only the current branch

从远程版本库同步

1
$ git pull
打赏