在 windows 上安装完 Git 会右键菜单中看到 Git 的快捷打开选项,
点
Git Bash Here
就可以在当前目录下打开 Git 的命令行 Git shell,初次使用 Git 先配置下基本信息:
Git 自带一个 git config 的工具来帮助设置控制 Git 外观和行为的配置变量。 这些变量存储在三个不同的位置:
- /etc/gitconfig 文件: 包含系统上每一个用户及他们仓库的通用配置。 如果使用带有 --system 选项的 git config 时,它会从此文件读写配置变量。
- ~/.gitconfig 或 ~/.config/git/config 文件:只针对当前用户。 可以传递 --global 选项让 Git 读写此文件。
- 当前使用仓库的 Git 目录中的 config 文件(就是 .git/config):针对该仓库。
每一个级别覆盖上一级别的配置,所以 .git/config 的配置变量会覆盖 /etc/gitconfig 中的配置变量。
当安装完 Git 应该做的第一件事就是设置你的用户名称与邮件地址。 这样做很重要,因为每一个 Git 的提交都会使用这些信息,并且它会写入到你的每一次提交中
$ git config --global user.name "Your name"
$ git config --global user.email your@example.com
全局的用户名和邮件地址可以修改,但一般不要改,特殊的仓库需要特殊的用户名和邮件地址,用不带 --global 的 config 当前仓库,
本地仓库的配置会覆盖全局的。
用户名和邮件会出现在每一次提交中,不同的用户名和邮件会被认为不同的人的提交,所以不想自己的功劳化为泡影的话,就不是随便修改用户名和邮件。
另外还有些其他的偏好设置,比如:
$ git config --global core.editor emacs
配置使用 emacs 编辑器替换默认的 vim
$ git config --list
查看当前的配置
开始的配置就简单的过了,复杂的配置看个人喜好
SSH
在 Git & GitHub 说的酷酷的 clone 的方法,就是用 SSH 连接。
GitHub 上有几种连接地址:
- https
- SSH
- Subversion
另外还有一种隐藏的连接方式 git 连接
就是是把 https 连接的 https 改成 git 就可以了
git 应该是速度最快的连接,当然在天朝的环境就要八仙过海,各显神通了
不过这种连接没有写权限,即不能用
$ git push
推送本地更改到远程仓库
除了 SSH,其他的连接方式都可以 clone 远程仓库,要用 SSH 连接,首先要配置密匙,并把公匙放在 GitHub 上
首先看看你是否有 SSH 密匙:
$ ls ~/.ssh
github_rsa github_rsa.pub id_rsa id_rsa.pub known_hosts
“以 id_dsa 或 id_rsa 命名的文件,其中一个带有 .pub 扩展名。.pub 文件是你的公钥,另一个则是私钥。”
id_rsa.pub 是我的公匙,把这个文件内容放在 GitHub 上就可以用 SSH 连接了,前面还有两个以 github 开头的文件是 GitHub Desktop 自动生成并放在 GitHub 上了,自己生成的公匙要自己放才起作用
点右上角的 setting 进入设置
然后在左侧选择“SSH keys”部分。
在这个页面点击“Add an SSH key”按钮,给你的公钥起一个名字,将你的~/.ssh/id_rsa.pub(或者自定义的其它名字)公钥文件的内容粘贴到文本区,然后点击“Add key”。
NOTE
确保给你的 SSH 密钥起一个能够记得住的名字。 你可以为每一个密钥起名字(例如,“我的笔记本电脑”或者“工作账户”等),以便以后需要吊销密钥时能够方便地区分。
如果没有 SSH 需要用 ssh-keygen 生成
$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/schacon/.ssh/id_rsa):
Created directory '/home/schacon/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/schacon/.ssh/id_rsa.
Your public key has been saved in /home/schacon/.ssh/id_rsa.pub.
The key fingerprint is:
d0:82:24:8e:d7:f1:bb:9b:33:53:96:93:49:da:9b:e3 schacon@mylaptop.local
ssh-keygen 会确认密钥的存储位置(默认是 .ssh/id_rsa),然后它会要求你输入两次密钥口令。如果你不想在使用密钥时输入口令,将其留空即可。
现在只要把公匙添加到 GitHub 就可以了,如果用的是其他的代码托管仓库,放在对应的地方即可,公匙可以重复利用