gitlab学习笔记(b站:手把手教您入门gitlab)
进入ubuntu系统查看git version
git的核心思想是创建一个仓储库,进行代码更改的跟踪
||git status 查看你的git仓库发生了什么事情
||git init 初始化创建一个git仓库 其意义为,在刚刚创建的文件夹my-cool当中建立一个代码仓库,通常情况下我们是无法直接看到里面所包含的内容,因此我们需要用到
|| ls -a命令来查看这个仓库当中拥有的内容
此时我们使用git status命令就会看到我们已经创建了并且处于master分支,master分支又可以理解为main 分支
我们可以看到master分支已经被创建出来了,接下来进行git 的配置(相当于登记你的个人信息,来方便管理员查看是谁对仓库中的代码进行了更改),利用指令:
||git config --global user.name “G ZH”
||git config --global user.email “736008123@qq.com”
接下来,学习git当中的重要指令,commit指令,字面意思可以理解为提交,我们在刚刚创建的git仓库中运行commit指令
||git commit
可以发现系统提示“无文件要提交”
此时我们进行一个简单的试验,利用vim 编辑器编一个markdown文件,然后将其插入commit分支
||vim readme.md
进入vim对markdown文件的编辑页面,输入内容 按ESC键,并输入:
||:wq
就可以保存并退出这个文件 ,而后我们再用
||ls -a
命令查看现有git 的时候我们就会发现readme.md 文件已经被加进去了
而后我们用经典命令
||git status 便可以查看发生的动作
可以看到尚无提交以及有未跟踪文件readme.md,此时我们根据提示运行指令
||git add readme.md
然后再查看代码仓库的状态时候我们发现readme.md已经进入了等待提交的队列
接下来,我们可以用以下指令进行我们的第一次提交尝试,运行如下指令:
||git commit -m “My first commit” 效果如下:
此时可以看到文件已经提交完成。
接下里学习如何提交多个文件
创建两个不同的文件,第一个创建一个全新的html文件。第二个,基于之前已经书写的readme.md文件,进行修改,然后利用git status指令进行查看的时候我们发现git 已经跟踪了readme.md文件的改变,但是新的html文件并没有被跟踪。
而后,我们直接键入指令
||git add --all或者git add .
就可以认为文件所有的文件都已经进入暂存区,但是还未将其进行提交,所以还无法进行更改追踪
接下里,我们尝试取消追踪对象readme.md
运行
||git reset HEAD readme.md
就可以精准的讲readme.md 从跟踪名单中分离出来,将其变为随时准备修改的状态,此时我们运行以下指令
|| git commit -m “xxxxx”
就可以将已经被git add进来放在暂存区的index.html文件进入被跟踪的状态,此时再git status查看状态的时候我们会发现readme.md仍然处于等待修改的状态,如果想要再次被追踪,那就需要再次运行
||git add . 指令,将其放入暂存区,而后再运行 git commit -m "xxxxx"指令将暂存区的内容放入追踪,如图所示
接下里,我们学习一下查看git 中所有发生的动作,就用如下指令
||git log
运行这个指令之后我们就能看到,所有的提交过的内容以及提交的基本信息。
接下来学习如何利用git 跟踪一个文件夹
首先我们需要创建一个新的文件夹,创建方法跟之前新建文件夹的时候一样,使用mkdir+ 文件名的指令
如图所示,当我们ls -a 的时候就会发现,my-cool文件夹下的,可以看到一个名为 “temp”的文件夹存在于git 体系中,但是当我们运行git status指令的时候我们发现文件夹并不会像文件那样,提示需要add。
此处我们需要应全新的指令语言来将文件夹加入git中,利用如下指令:
||touch temp/.gitkeep
此时可以看到,运行完上述指令之后,git提示我们出现未跟踪文件temp,此时再运行git add . 指令之后我们发现,如下:
已经对temp文件夹建立的新的追踪,并且该文件夹处于等待提交的状态,而后再执行同样的提交commit语句即可发现提交成功
接下来,学习如何删除文件不小心加入git 中的文件或者文件夹
如图所示,我们只需要运行一个rm指令:
||rm newfile.txt
就可以删除我们刚刚新建的文件,注意此时我们的newfile.txt文件时还没有被上传的文件,所以当直接删除这个文件的时候,git不会进行任何捕捉。但是当我们试一下删除已经commit的文件的时候,我们会发现它跑到了等待追踪的区域:
总结一下,在git操作中,对文件的删除分为两步,第一步是在文件夹中删除,这种删除对于没有commit的文件是可以直接作用的。但是对于已经commit的文件,仅仅做一个rm指令的话,只是将其从文件夹中删除了,而实际上,此文件/文件夹仍然存在于git当中,如果想要彻底删除的话,就需要在第一种删除的基础上执行一个git add . 指令,将这条携带删除含义的指令加入到暂存区,而后将其commit一下,就可以彻底在git中也删除了。
接下来学习在git中创建一个私人文件夹,实现不被追踪变化。
进行此类操作的关键在于利用指令:
||vim .gitignore
.gitignore是一个配置文件 ,在其中我们可以自由定义想要忽略(私有化不被追踪)的任何文件或者文件夹
在其中,可以直接写入文件夹的名称或者文件的名称,此时再利用git status指令可以看到git提示这个配置文件没有进入暂存区,
所以根据git的工作原理,万物皆可进入暂存区,暂存区的万物皆可git的时候,运行效果如下:
当我们把配置文件commit之后,我们再去看git status的时候我们发现我们的暂存区和新建文件区域都很干净。
接下来学习如何建立新的分支
首先我们直接无脑学习一波指令操作
||git checkout -b feature/new-table
表示创建一个新的分支,对于分支的理解,可以认为他是对master的一个clone, 克隆体发生任何变化的时候不会对主体产生任何影响。
以index.html文件为例,我们用vim修改代码,将原本的代码中加入table, 效果如下:
保存后退出,然后将其
||git add .
||git commit -m “Added Table”
此时在执行一个快速查看指令
||cat index.html
我们发现table已经被插入进去
然后我们再用指令
||checkout master
将操作对象切换到master分支的时候,我们再cat index,html, 就会发现master中的index.html文件的内容没有发生任何变化
此时如果我们想要回到 feature/new-table 分支的话,只需要执行指令
||git checkout feature/new-table
即可!(只有在第一次创建一个新的分支的时候才需要加 checkout -b xxx/xxx)
[外链图片转存中…(img-HifBA5Qu-1677245079875)]
此时如果我们想要回到 feature/new-table 分支的话,只需要执行指令
||git checkout feature/new-table
即可!(只有在第一次创建一个新的分支的时候才需要加 checkout -b xxx/xxx)
版权归原作者 HNU奋豆 所有, 如有侵权,请联系我们删除。