git为啥不需要网络就能用git

    xiaoxiao2022-07-04  197

    git是在本地创建一个仓库。这句话就是答案,但是说完这个肯定会被打。为啥呢。慢慢说,首先svn是在某个服务器上部署这,然后这些程序员小工们,就是从服务器上去取代码。然后修改修改,提交去服务器,然后更新覆盖本地。。然后修改本地,然后提交服务器。。这里重点来了,git的提交可是提交到本地哦。。。远端合并服务器的叫推送。。

    首先git在本地建立一个仓库,这个仓库存在了电脑的某个地方,或者在C盘或者在D盘,反正找不到。。然后你就问我不对啊,我看到我的代码了你怎么说我找不到呢。。。慢慢来。。

    1.初始化仓库

    打开一个空文件夹,老样子英文命名。

    cd hello // 首先进入文件夹内 git init // 初始化git仓库 // 文件夹会出现一个.git的文件,看不见也没事,可能隐藏了,不要管它。

    这个时候你的电脑某处就有个仓库了。。

    在hello文件下放一个abc.js

    { let a=1; alert(a); }

    就放这吗简单的代码。然后我们提交到本地仓库

    git add abc.js // 把abc.js这个文件放到缓存区 git commit -m "提交一个文件abc" // 这个就是提交到本地仓库了。 // -m和文字内容是提交要加描述和评论,为了自己看懂自己改了什么和别人看你改了什么。

    你说成功就成功了嘛。我都看不见啊。。然后再修改修改这个文件,再提交。再修改,再提交。玩三次四次。执行下边这个命令

    git log --pretty=oneline --abbrev-commit // 会看到下边这些东西

    我这有点多,这个时候你就肯定冒出个想法了,既然有记录,我肯定能回退到哪个版本了,对了

    git reset --hard commit_id // 这个hard必须要,这个commit_id就是你上边看到的那个每次提交的id git reset --hard HEAD^ //回退到上一个版本。

    那你现在操作的代码就是工作区。add以后的叫做缓存区。。commit是从缓存区拿东西然后提交到库里。你看是不是不用网。

    假如我新写的代码改乱了。。以前没bug,现在有了,完了还解决不了,代码想重新写,咋办?

    git checkout -- filename.js // 就出来了,切记不能少了那两个 --

    删错了的话也按上边那个方法走。。。。

    假如比上边的情况还严重,都放缓存区去了,咋办?

    git reset HEAD <filename> //先恢复最新,然后就回到上一种情况了。。然后按上一种情况走

    分支啊什么的也是在本地的。。所以说不用网络一样行。那为啥还要个远程仓库呢,首先仓库就是保代码安全,人多不乱的。

    远程的那个git库和本地这个没有区别。

    ( 工作流程是这样的,你在本地某个分支完成了项目,然后合并到开发dev分支, 然后合并到master分支上,然后把远端那个库的代码pull下来,解决冲突,本地提交,然后push推送。)

     

    最新回复(0)