最近正在学习git,想要透过把学到的东西写下来,来记录一下自己学到的东西,也方便以后回顾这些知识。
刚开始写这种类似技术性的文章,可能有很多地方写得不好,还请高手们不吝指教。
Git 是什么
Git是一种版本控制系统,可以帮忙管理档案以及档案版本的系统。一般来说,我们做专案不会一版就搞定,常常会因为哪里有问题、客户、上司要求等等不断删改,因此常会出现各种版本,像final、final1、final_new之类的。如果只是单纯存在电脑,那要管理哪一版是哪一版、回复上一个版本就蛮麻烦的了。这时候,用git就可以解决这样的问题。透过git,可以妥善管理修改前后的版本,想要回复上一动时也可以回到上一个版本。
此外,git是分散式版本控制系统(DVCS),跟中央式版本控制系统不太一样。中央式就像是有一个核心把关,想要使用资料要跟中央请资料,且一次只能一个人使用;分散式则不同,每个人的电脑内都複製着完整的档案快找,当需要取用时就将其取出,修改后再推至云端。这样的作法能够让多人编辑同一个专案更加容易,不同地点多人编辑档案完全没有问题。
Git 基础指令
以下讲讲git会用到的一些基本指令:git init
:在资料夹建立.git的资料夹,建立本机的repository(数据库)。git status
:查看档案变更的状态。要注意的是,status只会显示有变更的档案,如果没有变更则不会出现相关资讯。git add .
:将所有的档案变更暂存。要暂存单一档案变更可以用git add <档案名>
。git commit -m "message"
:将档案提交到本机的repository。加上-m
可以直接在终端机上输入要留下的讯息,不需要另开一个编辑器。git remote add <名称(origin)> <网址>
:新增远端的repository到本机上。在名称处输入这个远端的名称,一般是用origin;在网址处输入在如github等处建立的repository的网址。git push -u origin main
:将档案推上远端repository。-u
是指定这个repository,未来即使不再次输入也会默认推上这里;origin是刚刚建立的名称;main是branch(分支)的名称,将档案储存到这个分支。过去都是用master,不过近些年github改用main的样子,想说这边取名也用main。
将档案推上Github
假设现在有一个专案资料夹,里面新建了一个A.html,我想要把资料夹内的这个A.html推上Github。
首先,打开终端机,我是用windows系统所以用cmd,在搜寻栏打cmd就可以找到;也可以在windows上下载wsl,可以在windows上执行linux的指令,蛮好用的。使用cd <档案位置>
在终端机打开专案资料夹。在专案资料夹的位置输入git init
,建立本机数据库。接着,输入git add .
,把新增的A.html给暂时储存。也可以输入git add A.html
。输入git commit -m "1st version
,将暂存档案提交到本地数据库。引号的部分可以自由输入想要留下的comment。在Github新建一个数据库。新增按钮在github上方列的右边,有一个加号,点他就能看到new repository,点他。将新建repository的网址複製下来。(.git结尾的)使用git remote add origin <url>
,新增远端数据库到本机。最后,使用git push -u origin main
,将专案推上github。以上就是git的一些基本知识,下一篇会写要如何回复之前的版本,以及从远端数据库複製资料。