Git是什么?
git是是一个强大的分布式版本控制系统软件,而且是开源、免费的,还不用联网,程序员应当都应当了解这款软件。
Git如何使用?
我下面介绍的是linux系统下的操作,当然windows、Mac也可以用,但我这里不做介绍(因为我没用过)。
Git下载
首先你得下载一个git,一般情况下你下的linux系统都会自带git,你可以输入
#git --version
来检查你的系统是否已经安装了git,若没有,则输入以下指令进行安装。
#sudo apt update
#sudo apt install git
这里说一下,linux系统下安装软件前一定要记得update!
Git账户
然后就是设置git账号了。
#git config --global user.name "xxxxxx"
#git config --global user.email "xxxx@xxxx.com"
打叉的地方是你自己写的东西。你可以再设置更改账户名称或邮箱地址。
你可以输入
#git config --list
来查看是否配置成功。
Git基操
git的实现分为三大区,工作区,暂存区,版本库,其中最为关键的就是这个暂存区,应用的时候自然会感受到git的强大。
首先创建一个文件夹当做工作区,比如
#mkdir gitlearn
#cd gitlearn
#git init
这样一个工作区就创建好了,如果用ls -a指令查看文件夹的话,你会发现一个.git文件夹,这个文件夹最好不要轻易修改。
创建好了工作区,接下来就是文件了。新建一个test.txt文件,输入内容,保存退出。
用指令
#git status
你会发现如下语句
On branch master Initial commit Untracked files: (use "git add <file>..." to include in what will be committed) test.txt nothing added to commit but untracked files present (use "git add" to track)
最后一句他叫你使用git add语句去track,track什么意思?追踪?跟add有啥关系?其实就是追加,追加到暂存区,这个以后再讲。那就来track吧
#git add test.txt
输入完再使用git status查看当前状态,
On branch master Initial commit Changes to be committed: (use "git rm --cached <file>..." to unstage) new file: test.txt
你可能看不懂,看到他让你使用git rm --cached <file> ...来unstage,unstage啥意思?去缓存,就是从暂存区删除,看到rm就应该感觉到不对劲。而我们写好的代码应该上传啊,怎么就删了?其实不然,这里有个单词commit,commit啥意思?提交啊。那就commit呗。 </file>
#git commit -m "get start"
引号里的内容是你对此次文件修改的描述,防止在版本更替的时候一点概念都没有,这是我们创建的第一个文件所以我们来个get start。这个指令会将暂存区的文件上传到本地的版本库。写到这了,下次再更新。
-- 2020.3.18
版本回退
如果有一天我们想放弃当前的修改,回到之前的存档中,我们该怎么做呢?
这里就要用到HEAD指针和reset操作。
首先我们创造几个版本,你提交一次就多了一个版本。
使用git log命令获取最近到最远的修改记录。
直接使用git reset 版本号 就行了
版本号就是那一大串字符,现在有github,方便的多了。