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

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推送。)

 

本文链接:https://my.lmcjl.com/post/13364.html

展开阅读全文

4 评论

留下您的评论.