




已阅读5页,还剩27页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.,Git新一代版本控制系统,superwen,.,Git简史,Linux内核开源项目有着为数众广的参与者。一开始整个项目组BitKeeper来管理和维护代码。2005年,BitKeeper不再能免费使用,这就迫使Linux开源社区开发一套属于自己的版本控制系统。自诞生于2005年以来,Git日臻成熟完善,它的速度飞快,极其适合管理大项目,它还有着令人难以置信的非线性分支管理系统,可以应付各种复杂的项目开发需求。,.,Git基础,直接记录快照,而非差异比较。近乎所有操作都是本地执行时刻保持数据完整性多数操作仅添加数据文件的三种状态-已修改(modified)、已暂存(staged)和已提交(committed),.,为什么要使用Git,本地建立版本库本地版本控制多主机异地协同工作重写提交说明有后悔药可以吃更好用的提交列表更好的差异比较。更完善的分支系统代理SVN提交实现移动式办公无处不在的分页器速度快,.,在Linux下安装Git,使用包安装,以centos为例$yuminstallgit$yuminstallgit-svngit-emailgit-guigitk使用源代码安装从官网下载源码http:/git-$tarjxvfgit-version.tar.bz2$cdgit-version$makeprefix=/usr/localall$sudomakeinstallprefix=/usr/local,.,在Windows下安装Git(Cygwin),通过Cygwin安装(不建议)通过msysGit完成安装之后,就可以使用命令行的git工具(已经自带了ssh客户端)了,另外还有一个图形界面的Git项目管理工具。可视化工具TortoiseGit,.,Git的配置,#查看版本$git-version#配置$JohnDoe$gitconfig-globaluser.emailjohndoe,.,Git的初始化新仓库,#在工作目录中初始化新仓库$cdmyproject$gitinit#从现有仓库克隆,克隆完整数据,包括版本信息$gitclonegit:/,.,Git的跟踪文件,#跟踪新文件$gitadd*.c#将文件添加到暂缓区,每次修改之后都需要将文件放到暂缓区去$gitadd*.c#忽略某些文件#修改.gitignore*.a#忽略所有.a结尾的文件!lib.a#但lib.a除外/TODO#仅仅忽略项目根目录下的TODO文件,不包括subdir/TODObuild/#忽略build/目录下的所有文件doc/*.txt#会忽略doc/notes.txt但不包括doc/server/arch.txt,.,Git的比较,#查看尚未暂存的文件更新了哪些部分$gitdiff#查看暂存区文件和上次提交的快照之间的差异$gitdiff-cached,.,Git的提交更新,#提交更新#每次准备提交前,先用gitstatus看下,是不是都已暂#存起来了,然后再运行提交命令$gitcommit$gitcommit-minitialprojectversion#跳过使用暂存区域$gitcommit-a,.,Git的移除文件,#移除文件$gitrmgrit.gemspec#移除已经修改的文件$gitrmgrit.gemspec-f#仅仅从暂缓区移除$gitrmgrit.gemspec,.,Git的移除文件,#移除文件$gitrmgrit.gemspec#移除已经修改的文件$gitrmgrit.gemspec-f#仅仅从暂缓区移除$gitrmgrit.gemspec#移动文件$gitmvfile_fromfile_to,.,Git的查看提交历史,#查看提交历史$gitlog-p展开显示每次提交的内容差异-n则仅显示最近的n次更新-stat,仅显示简要的增改行数统计-pretty=format:%h-%an,%ar:%s,.,Git的修改最后一次提交,#修改最后一次提交$gitcommit-minitialcommit$gitaddforgotten_file$gitcommitamend#上面的三条命令最终只是产生一个提交.#取消已经暂存的文件$gitresetHEADbenchmarks.rb#取消对文件的修改$gitcheckout-benchmarks.rb,.,Git的远程仓库,#查看当前的远程库$gitremote#显示对应的克隆地址(origin为默认的远程库名称)$gitremotev#添加远程仓库$gitremoteaddpbgit:/,.,Git的远程仓库,#从远程仓库抓取数据#fetch命令只是将远端的数据拉到本地仓库,并不自动合并到当前工作分支$gitfetchremote-name#推送数据到远程仓库$gitpushoriginmaster,.,Git的远程仓库,#查看远程仓库信息$gitremoteshoworigin#远程仓库的重命名$gitremoterenamepbpaul#远程仓库的删除$gitremotermpaul,.,Git的标签,#列显已有的标签$gittag#列出符合条件的标签$gittag-lv1.4.2.*,.,Git的标签,#新建标签#标签有两种类型:轻量级的(lightweight)和含附注的(annotated)#创建一个轻量级标签$gittagv1.4-lw#创建一个含附注类型的标签非常简单$gittag-av1.4-mmyversion1.4,.,Git的标签,#分享标签#默认情况下,gitpush不会把标签传送到远端服务器$gitpushoriginv1.5#一次推送所有本地新增的标签$gitpushorigin-tags,.,Git的技巧和窍门,#自动完成#Windows上安装了msysGit,默认已经配好了这个自动完成脚本。#Linux上$cp$GitHomecontrib/completion/git-completion.bash/etc/bash_completion.d/,.,Git的技巧和窍门,#Git命令别名$gitconfig-globalalias.cocheckout$gitconfig-globalalias.brbranch$gitconfig-globalalias.lastlog-1HEAD,.,Git的分支,#创建分支$gitbranchtesting#切换到分支$gitcheckouttesting#创建并切换到分支$gitcheckout-btesting,.,Git的分支,.,Git的分支,.,Git的分支,#与当前分支合并$gitmergetesting#合并时难免有冲突#调用图形化工具解决冲突$gitmergetool#删除分支(不能删除一个未合并的分支)$gitbranch-dtesting#强制删除一个分支$gitbranch-Dtesting,.,Git的分支,.,Git的分支,.,Git的分支,#查看分支$gitbranch#查看分支最后一次提交的信息$gitbranch-v#查看已经合并|尚未合并的分支$gitbranch-merged|no-merged,.,Git的分支,#同步远程服务器上的数据到本地$gitfetch
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年城乡旅游班车运营权转让合同范本
- 2025年度国际旅游英文租车合同范本(含自驾游租车)
- 2025乡村宅基地使用权转让合同范本填写指引
- 2025养老护理院专业设备租赁与维护服务合同范本
- 2025年度高端财务顾问服务合同-综合数据解析与战略规划
- 2025年专精特新企业小额流动资金贷款服务合同
- 2025年智能物流供应链管理SaaS服务使用合同
- 2025年智能公寓租赁及房屋买卖合同附赠广告营销推广服务
- 2025年远程医疗服务数据传输与保密性保障合同
- 2025年PE管材进出口贸易及仓储物流一体化服务合同
- 2025CSCO子宫内膜癌新进展及指南更新要点
- 2025年贵州省存量房买卖合同
- 2024-2025学年湖北省武汉市高一上学期1月期末考试英语试题(解析版)
- 既有供暖蒸汽管网及设施改造项目建议书(参考范文)
- 马工程西方经济学(精要本第三版)教案
- 电信装维人员服务规范
- 2025年水文勘测工(中级)职业技能考试题(附答案)
- 加油站气象灾害防御制度
- 企业事故隐患内部报告奖励制度
- 《思想道德修养与法律基础》整体教学设计
- 2020低压交流配网不停电作业技术导则
评论
0/150
提交评论