前面博客 Git学习系列之Git基本操作推送项目(图文详解) 当然,如果多人协作,或者多个客户端进行修改,那么我们还要拉取(Pull ... )别人推送到在线仓库的内容下来. 大神们是不推荐使用 pull 命令进行拉取的, 因为封装了细节(git pull == git fetch + git merge). 对于这群更喜欢用命令行的神们来说, 一切在掌控之中是一种强迫症!!!(开个玩笑, 其实项目成员复杂,约定不好以后,pull 确实会有很多问题,会坑人.) 常规使用,我们执行 git pul…
前面博客 Git学习系列之Git基本操作提交项目(图文详解) 如果完成到一定程度,那么可以推送到远端在线仓库. 推送之前,请确保你已经设置了全局的 user.name 和 user.email, 如果没有设置,或者不想使用全局的信息,可以在当前项目下设置: F:\GIT_ALL\LispGentleIntro>git config user.name "renfufei" F:\GIT_ALL\LispGentleIntro>git config user.email &q…
前面博客 Git学习系列之Git基本操作克隆项目(图文详解) 然后可以 cd 切换到 LispGentleIntro 目录, 新增或者修改某些文件.这里只是模拟一下操作, 实际情况可能是 使用 Eclipse 导入项目(不要拷贝,Copy...)进行一些编辑, 然后将当前目录下的所有有变动的文件告诉索引库,接着提交到本地仓库. F:\GIT_ALL>cd LispGentleIntro F:\GIT_ALL\LispGentleIntro>echo some content >>…
不多说,直接上干货 前面,谈及了 Git学习系列之Git 的优势有哪些? 缺点: (1)资料少(起码中文资料很少). (2)学习周期相对而言比较长. (3)不符合常规思维. (4)代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息. 欢迎大家,加入我的微信公众号:大数据躺过的坑     免费给分享       同时,大家可以关注我的个人博客:    http://www.cnblogs.com/zlslch/   和     http://www.cnblogs.com/l…
PS:本文转载于(http://blog.jobbole.com/50603/),本文由 伯乐在线 - 吴鹏煜 翻译. 英文出处:(http://sixrevisions.com/web-development/git-tips/) 当我刚刚开始使用Git的版本控制时,我根本不确定我付出那么多时间是不是会得到回报.Branch.Stage.Stash,这些Git名词对我来说都非常陌生. 而今天的我已不能想象生活没有Git会变成什么样.Git不仅提供了我非常需要的版本控制功能,还让我变成一个更优秀…
本系列文章部分原理和命令相关内容是从 https://git-scm.com/book/zh/v2 摘录,软件实际使用是总结自己的实践经验成文. 1. 关于版本控制 版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统. 本地版本控制系统 许多人习惯用复制整个项目目录的方式来保存不同的版本,或许还会改名加上备份时间以示区别. 这么做唯一的好处就是简单,但是特别容易犯错. 有时候会混淆所在的工作目录,一不小心会写错文件或者覆盖意想外的文件. 为了解决这个问题,人们很久以前就…
本文出自   http://blog.csdn.net/shuangde800 --------------------------------------------------------------------------------- 本文内容: 初始化一个新的代码仓库,做一些适当配置: 开始或停止跟踪某些文件: 暂存或提交某些更新. 让 Git 忽略某些文件,或是名称符合特定模式的文件: 既快且容易地撤消犯下的小错误: 浏览项目的更新历史,查看某两次更新之间的差异: 如何从远程仓库拉数…
git log -l -pretty=raw // 查看日志 -l是干啥的 git log -pretty=raw // git cat-file -t 哈希值 // 查看id的类型 不知道为啥这里我不一样:即使用git log -l --pretty=raw也只是出现commit的,但是git cat-file -p 哈希值则会出现tree和parent. root@tuhooo:~/workspace/demo # git log commit ac31089960196a531c277dc…
对于更改操作的处理 使用git status命令可以看到当前工作区的状态: git status // 查看工作区的状态 // 对于已经git add工作区中文件 git reset HEAD <file> ... // 已经添加但是还没有commit的更改,通过这命令可以取消add git commit <file> // 将更改加入版本库中 // 对于还没有add的工作区中的文件 git checkout -- <file> // 将commit后的数据检出替换工作…
不同参数下git diff输出并不相同,理解了工作区,暂存区和版本库的关系之后就很容易理解diff了. 工作区.暂存区和版本库的目录树浏览 清除工作区中未被git管理的文件 git clean -fd 查看暂存区和HEAD中的目录树 git ls-tree -l HEAD 其中: 参数-l可以显示文件大小 第一个字段时文件的属性(rw-r--r--,644) 第二个字段说明时Git对象库中的一个blob对象(文件) 第三个字段时该文件在对象库中对应的ID——40位的SHA1哈希值 第四个字段时文…