撸到猴年马月之保卫萝卜(三)git入门

上班用的版本控制工具是svn,听说github最近挺火,就想顺便学习一下git。
看的书是progit。弄一点基础好了。

1.git和其他版本控制系统的差别。
  git关心数据整体的变化,其他系统关心文件的具体差异。
 

  git并不保存这些前后变化的差异数据。实际上,git更像是把变化的文件作快照后,记录在一个微型的文件系统中。每次提交更新时,它会纵览一遍所有文件的指纹信息并对文件作一快照,然后保存一个指向这次快照的索引。为提高性能,若文件没有变化,git不会再次保存,而只对上次保存的快照作一连接。
 

2.近乎所有的操作都可以本地执行。
3.数据的指纹,一组哈希码。所有保存的数据靠哈希码唯一标识和索引。
4.三种状态
  committed(已提交),modified(已修改),staged(已暂存)。
 

  基本的git工作流程:
  在工作目录修改文件。
  对这些修改作快照,保存到暂存区域。
  提交更新,将保存在暂存区域的文件快照转储到git目录中。

一些基本的命令如下:
1.对当前目录进行git管理。在此目录下执行:
  git init
2.复制远程的代码库
  git clone git://github.com/schacon/grit.git
  git clone git://github.com/schacon/grit.git mygrit
3.检查当前文件状态
  git status
 

  git文件状态变化周期
4.文件从untracked->tracked,从modified->staged
  git add
  修改的文件要先add到暂存态,再commit到git仓库。
5.忽略某些文件。
  创建一个.gitignore文件,列出需要忽略的文件模式。
  #this is to ignore sth
  *.a
6.查看修改之后还未暂存的文件区别
  git diff
  查看已暂存文件和上次提交时文件的区别
  git diff --staged
7.提交更新
  git commit -m “this is log message” xxx.xxx
8.跳过暂存
  git commit -a -m “this is log message” xx.xxx
9.移除文件
  git rm
  移除但不删除文件(使文件不被跟踪)
  git rm -cached
10.重命名
  git mv test.txt test.t
  等价于
  mv test.txt test.t
  git rm test.txt
  git add test.t
11.可视化查看log
  gitk 
12.修改最后一次提交
  git commit --amend
  git commit -m “initial commit”
  git add forgotten.txt
  git commit --amend
  以上三条命令最终得到一个提交,第二个提交命令修正了第一个提交内容。
13.取消已暂存的文件
  git reset HEAD xxx.xx
14.取消对文件的修改
      git checkout xxx.xxx
15。查看当前的远程仓库
  git remote
  git remote -v
  其中只有origin仓库可以push
  
远程库要理解分支的概念,暂时不看了。
git的命令行工具用起来感觉…颜色不错
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值