Git基本的工作流程

1. Git四个内部对象:
blob,tree,commit,tag
Git使用40个16进制字符的SHA-1 Hash来唯一标识对象
2. 获取Git仓库
Git仓库分两种:
一种是非裸仓库——
另一种是裸仓库——不带工作区,通常用于服务器上方便其他用户进行协作;
1)git init
非裸仓库
$ cd D:/JavaSetting/Git/resp/:该语句是为了把git仓库建在我指定的一个文件夹resp里面;
$ git init git_non_bare_repo:该语句操作完成后,可以在resp文件夹里看到一个名为git_non_bare_repo的文件夹;
然后,由下面的提示语看到,这个文件夹里还带了个.git目录;
$ cd git_non_bare_repo/.git/:进入到这个.git里面,此时命令行<GIT_GIR!>提示这是个git工作区间;
$ ls:查看到git工作所需要的一些文件和目录;

这里写图片描述
ls同样有这些文件,但是它们不在.git目录里(直接在git_bare_repo文件夹可以看到这些目录和文件),这是因为裸仓库不带工作区。

————对于一个已经有的工作环境,如何纳入git的管理呢?
 首先建立一个文件夹:`$ mkdir git_init_repo;`
 进入这个文件夹:`$ cd git_init_repo`;
 直接在这个文件夹里面输入:`$ git init`——直接初始化好了;

这里写图片描述

 2)git clone(通常需要远程裸仓库的地址)
`$ git clone git_bare_repo/ git_clone_repo`:为避免重名,故重命名一个`git_clone_repo`;

这里写图片描述

3. Git仓库有三个区域
1)working directory:工作区域,平时写代码的,它维护着一个树形结构;
2)history repository:历史仓库,是commit指向的树形结构;
3)staging area:暂存区,相当于工作区与历史提交中间的一个缓存。
这里写图片描述
如图第一、二步对应的就是git add和git commit命令;
怎么查看工作区和暂存区的区别来确保我们提交是我们所需要的呢:git status;
从暂存区删掉我们不需要的东西:git rm;
在工作区中移动文件或重命名文件:git mv;
确保工作区里面的一些文件不被添加到暂存区和历史区:git ignore;

创建一个git仓库,创建两个文件a,b,并将这两个文件添加到暂存区里,然后`git status`——提示有两个新的文件将被提交:

这里写图片描述

上面提交将会是初次的提交, $ git commit -m "Initial commit"这两个文件就会被提交到历史记录里面了,修改一下a文件:vim a,输入test status之后按esc,然后输入:wq之后再回车回到git界面,再git status——提示a被修改了,但是还没有保存到暂存区里,也就是说还没有被提交:
这里写图片描述
这里写图片描述

用`$ git add a`添加到暂存区里,再`git status`——这时可以看到a已经准备被提交啦~

这里写图片描述
然后提交:
这里写图片描述

当a不再需要的时候,`$ git rm a`会同时把工作区的文件a和暂存区的a引用给删除掉:

这里写图片描述
这里写图片描述
告诉我们,如果我们使用git commit的话,就相当于历史提交里面没有a这个文件了~

————那我们怎么只删除暂存区的文件不删除工作目录的文件呢?
先还原:`$ git reset HEAD a`,然后`$ git rm --cached a`,就从暂存区里把a删掉了:

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值