git

准备工作

下载并安装git软件然后直接可以上手了!!!

打开Git Bash,cd到你要创建成版本库的目录(最好是空目录,重要文件目录记得备份)

1
2
$ git init
Initialized empty Git repository in I:/git/vine_dataset/.git/

接下来可以在这个文件夹里为所欲为(不要碰默认隐藏的功能文件夹.git)

把一个文件放到Git仓库只需要两步

第一步,用命令git add告诉Git,把文件添加到仓库:

1
git add 修改的文件名

PS:git add xx命令可以将xx文件添加到暂存区,如果有很多改动可以通过git add -A .来一次添加所有改变的文件。
注意 -A 选项后面还有一个句点 . git add -A表示添加所有内容, git add . 表示添加新文件和编辑过的文件不包括删除的文件; git add -u 表示添加编辑或者删除的文件,不包括新添加的文件。

第二步,用命令git commit告诉Git,把文件提交到仓库:

1
$ git commit -m 提交描述

其他命令

git status

让我们时刻掌握仓库当前的状态,反馈类似nothing to commit, working tree clean
git diff 文件名

查看具体修改

git log

查看提交历史,简易信息git log --pretty=oneline

git reset --hard HEAD^

回退到某一版本,在Git中,用HEAD表示当前版本,上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。

git reflog

记录你的每一次命令

git checkout -- file

丢弃工作区的修改

git reset HEAD file

可以把暂存区的修改撤销掉,重新放回工作区

git rm test.txt

删除文件,可用git checkout -- test.txt还原

远程仓库

在继续阅读后续内容前,请自行注册GitHub账号。由于你的本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以,需要一点设置

第1步:创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key

ssh-keygen -t rsa -C "youremail@example.com"

你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。
如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。

第2步:登陆GitHub,打开“settings”,“SSH and GPG Keys”页面添加你的id_rsa.pub内容

在GitHub创建一个同名Git仓库,在本地的对应的Git仓库下运行命令

1
2
git remote add origin git@github.com:Hodgeli/vine_dataset.git
git push -u origin master

由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令git push origin master

从远程库克隆

在github创建新仓库(repository): cloneTest
用命令git clone克隆一个本地库:

1
$ git clone git@github.com:Hodgeli/cloneTest.git