Git是目前世界上最先进的分布式版本控制系统。
创建版本库
版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。
创建一个版本库非常简单,首先,选择一个合适的地方,创建一个空目录:
1 | mkdir learngit |
第二步,通过 git init
命令把这个目录变成Git可以管理的仓库:
1 | git init |
把文件添加到版本库
编写一个 readme.md
文件,放在版本库的目录下,然后通过两个步骤将文件放到仓库:
第一步,用 git add
告诉Git,把文件添加到仓库:
1 | git add readme.md |
第二步,用命令 git commit
告诉Git,把文件提交到仓库:
1 | git commit -m "wrote a readme file" |
-m
后面输入的是本次提交的说明,可以输入任意内容,当然最好是有意义的,这样你就能从历史记录里方便地找到改动记录。
远程仓库
GitHub设置添加SSH
由于你的本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以,需要一点设置:
创建SSH Key
在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有 id_rsa
和 id_rsa.pub
这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:
1 | ssh-keygen -t rsa -C "youremail@example.com" |
把邮件地址换成自己的邮件地址,然后一路回车,使用默认值即可。
如果一切顺利的话,可以在用户主目录里找到 .ssh
目录,里面有 id_rsa
和 id_rsa.pub
两个文件,这两个就是SSH Key的秘钥对,id_rsa
是私钥,不能泄露出去,id_rsa.pub
是公钥,可以放心地告诉任何人。
在GitHub设置中添加
登陆GitHub,打开”Account settings”,”SSH Keys”页面。然后,点”Add SSH Key”,填上任意Title,在Key文本框里粘贴 id_rsa.pub
文件的内容。最后点击 “Add Key”即可。
添加远程库
首先在GitHub创建一个Git仓库,然后将本地的仓库与远程仓库关联:
1 | git remote add origin git@github.com:yourgithubname/yourreponame.git |
把上面的 yourgithubname
替换成你自己的GitHub账户名,把 yourreponame
换成你的仓库名。
下一步,就可以把本地库的所有内容推送到远程库上:
1 | git push -u origin master |
把本地库的内容推送到远程,用 git push
命令,实际上是把当前分支 master
推送到远程。
由于远程库是空的,我们第一次推送 master
分支时,加上了 -u
参数,Git不但会把本地的 master
分支内容推送的远程新的 master
分支,还会把本地的 master
分支和远程的 master
分支关联起来,在以后的推送或者拉取时就可以简化命令。