写了一篇文章《一篇文章了解Github和Git教程》还觉得不错,继续写了《为了Github默默付出,我想了解你》,那么继续写 Git 基础知识。
Git 官网:https://git-scm.com/
Git简介:
Git是一种分布式版本控制系统,你也许会问什么是版本控制系统?那么根据我知道的学习知识来告诉你,但首先你也需要了解一下 github 知识,因为比较好理解吧。
版本控制系统,就是一个名词而已吧,Git 是为了方便人们而发明的,当我们每次写完代码时,提交到 Github 上时,我们会记录下提交说明,简述该代码写了什么内容,做了哪些更改,能够方便记录,在 Github 上回记录你代码的增删情况,就可以了解你每次做了什么,改过什么,很方便也对他人了解你的操作行为。
当你进行结对操作项目时,你的伙伴能通过了解提交说明了解你的行为操作。
版本是对方式的解释,如果没有 Git , 那么你就要自己手动操作,控制,来说明你做的项目,听说新人在打代码项目时,遇到不通,就删掉或者复制保存,防止重新做项目,如果你会 Git 和 Github , 那么你就不用担心该问题了。
版本 控制 系统,方便你的项目操作。
Git 介绍:
Git 是大神级的一群大师做出来的,由Linus花了时间写的一个分布式版本控制系统,当时还没有 GitHub 网站呢?Linus 的发展很快,因为有全世界的人进行参加的,Git 是为了用来存放代码的,当 GitHub 上线时,提供了 Git ,现在很多开源项目在GitHub平台上了。
想用 Git 要先下载,下载很容易,就不说了。上方提供了官网下载地址哦!!!
设置账号:
在之前的文章中,描述了如何设置账号,但首先你要去 github 网站上进行注册,拥有自己的账号先:
打开你下载好的 GIT ,“Git Bash” 软件
$ git config --global user.name "your.name" $ git config --global user.name "email@example.com"
一些 Git 操作
创建版本库:
mkdir repository cd repository
通过使用Git bash git init命令把该目录变成 Git 可以管理的仓库,就是可以放代码的目录了,好像粮仓一样,很爽!!!
git add text git commit -m "imformation"
git status git diff 查看修改过的内容 git status 提交后查看状态
查看提交的历史记录 git log 命令,或者输入 git log --pretty=oneline 命令哦!输入 git reset --hard HEAD^ 退回之前的提交版本,这个使用对开始的小白很重要也很好用哦!
git reset --hard 555 ( commit id )
使用上方命令可以回到之前的版本,也可以用 git reflog ,当你会不到之前的版本时,查看 id 即可回去。
git reset --hard commit_id git log 查看提交历史 git reflog 查看命令历史
之前的文章中介绍了Git , 但有些不全,了解一下Git中什么是工作区,在文章上方我们创建了一个仓库,该仓库就是工作区。我们在该目录可以查看到 .git 文件,这个就是版本库,Git的版本库哦!
说明:本教程的所有操作都在master分支上,且仅用于个人代码仓库管理,操作的实用性有待研究。
已修改,未暂存(检查工作区与暂存区间的差异)
git diff
已暂存,未提交(检查暂存区与本地仓库间的差异)
git diff --cached
已提交,未推送(检查本地仓库与远程仓库间的修改)
git diff master origin/master
## origin/master 为远程仓库
撤销修改
已修改,未暂存(撤销工作区的修改)
git reset --hard
已暂存,未提交(撤销暂存区的修改)
git reset --hard
已提交,未推送(撤销本地仓库的修改)
git reset --hard origin/master
## origin/master 为把远程仓库的代码取回并覆盖本地代码
已推送(撤销远程仓库的修改)
git reset --hard HEAD^ git push -f
## 此时本地仓库和远程仓库是一样的
## 1.第一步先恢复本地仓库
## 2.第二步再强制同步本地仓库到远程仓库
重点:git add 把文件修改添加到暂存区,要牢记 .git -> stage -> master -> HEAD,而git commit 提交把暂存区里面的内容提交到 master。一旦提交,暂存区就没东西了,而 master 上就是提交的内容了。git add 后跟着用git commit ,每一次修改如果要提交先git add 一下。
git checkout -- text 命令撤销命令,回到最近一次的状态中,如果你想撤回暂存区的内容,可以用命令 git reset HEAD text 就可以了。git reset 命令可以使版本退回前一个版本,可以把暂存区的修改退回到工作区内。
丢弃工作区的修改命令:git checkout -- text,这是改乱了工作区内的内容,相当于Ctrl + Z 的内容,如果到暂存区时,用 git reset HEAD text 命令,然后 git checkout -- text 内容。
来来来最后了。
教你删除文件,解决一切烦恼。
我来删除文件咯咯咯,输入命令 rm text 就可以看到神奇效果,你文件被删除了哦,git rm text 就好,已经删除了版本库中的文件了。哈哈,开心。