git的一些常用操作
一、版本库的创建到提交操作
- 在当前文件夹新建一个版本库
通过git init命令,创建git可以管理的仓库
git init
- 将工作区文件修改添加到暂存区
git add 文件名
添加全部文件
git add --all
- 将改动从暂存区提交到版本库
通过git commit把改动提交到版本库,可以一次提交多次add
git commit -m "改动说明"
二、远程库
(一)绑定远程仓库
git作为分布式管理系统,可以存在一个本地库和多个远程仓库。一般都是使用github作为服务器,将自己的提交推送到服务器仓库里,也从服务器仓库拉取别人的提交。
- 想要绑定远程git库,第一步要创建SSH Key:
$ ssh-keygen -t rsa -C "youremail@example.com"
然后在用户目录进入.ssh目录,有id_rsa和id_rsa_pub文件。id_rsa是私钥,id_rsa_pub是公钥。
- 登录Github,settings里找到
SSH and GPG keys,点击New SSH Key,在下方文本框里粘贴公钥文件的内容。
(二)创建远程仓库
在GitHub个人首页,右上角找到“Create a new repo”按钮,创建一个新的仓库。
创建成功后,根据网页上关于本地已有或未有版本库的代码提示,在Git bash输入对应代码,成功推送版本库。
三、使用git的一些常用操作
-
将文件从版本库中删除
$ git rm filename -
通过
git status可以看到目前版本库的状态$ git status -
通过
git diff可以查看文件的改动$ git diff 文件名 -
通过
git log可以查看从最近到最远的提交日志,其中有版本号$ git log # 可以加上--pretty=oneline参数,减少点信息,方便看 $ git log --pretty=oneline -
版本回退
在Git中,使用HEAD表示当前版本,HEAD^表示上上个版本,之前100个版本是HEAD~100.
回退到上个版本,使用
git reset命令,$ git reset --hard HEAD^ # 或者是使用版本号,使用到能区分出各个版本的位数即可。 $ git reset --hard 版本号假如回退后,之后又想恢复到最近版本,那么就使用
git relog来查看你的每一次命令$ git relog在显示的信息中,找到你想要的版本号恢复即可。
-
删除本地git仓库
在本地仓库的目录下调用命令行删除根目录下的
.git文件夹,输入$ find . -name ".git" | xargs rm -Rf这个操作会将所有文件都删除
-
删除远程仓库的
test.md文件,本地不想删# --cached表示从索引中删除文件,但并不删除本地的文件,只是不希望这个文件被版本控制 $ git rm -r --cached test.md $ git commit -m 'rm' $ git push -
从远程仓库克隆
使用
git clone命令,可以从远程仓库克隆一个本地库git clone git@github.com:******/****.git
最后说一句,所有的版本控制系统,都是跟踪文本文件的改动,比如TXT文件,网页,程序代码等,对图片、视频等二进制文件,虽然都可以管理,但是无法跟踪改动。word文件同样也是二进制编码的,因此也无法跟踪。比如windows自带的记事本,保存时,会自动的添加0xefbbbf(十六进制)的字符,因此最好是不使用。