GIT 搭建、定制、生成patch及打补丁、git基础操作命令
来源:互联网 发布:招收淘宝客服 编辑:程序博客网 时间:2024/06/07 07:34
一:GIT搭建:Gitolite --搭建Git 服务器详解
二:GIT 定制:
git config用户信息$ git config --global user.name "John Doe"$ git config --global user.email johndoe@example.com更改你的编辑器$ git config --global core.editor emacs添加别名$ git config --global alias.last 'cat-file commit HEAD'$ git lasttree c85fbd1996b8e7e5eda1288b56042c0cdb91836bparent cdc9a0a28173b6ba4aca00eb34f5aabb39980735author Scott Chacon <schacon@gmail.com> 1220473867 -0700committer Scott Chacon <schacon@gmail.com> 1220473867 -0700fixed a weird formatting problem$ git cat-file commit HEADtree c85fbd1996b8e7e5eda1288b56042c0cdb91836bparent cdc9a0a28173b6ba4aca00eb34f5aabb39980735author Scott Chacon <schacon@gmail.com> 1220473867 -0700committer Scott Chacon <schacon@gmail.com> 1220473867 -0700fixed a weird formatting problem添加颜色所有的color.*选项请参见git config的文档$ git config color.branch auto$ git config color.diff auto$ git config color.interactive auto$ git config color.status auto或者你可以通过color.ui选项把颜色全部打开:$ git config color.ui true提交模板$ git config commit.template '/etc/git-commit-template'日志格式$ git config format.pretty oneline差异分析工具还有一个比较常用的是,在解决合并冲突时使用哪种差异分析工具。比如要改用 vimdiff 的话:$ git config --global merge.tool vimdiffGit 可以理解 kdiff3,tkdiff,meld,xxdiff,emerge,vimdiff,gvimdiff,ecmerge,和 opendiff 等合并工具的输出信息。当然,你也可以指定使用自己开发的工具。查看配置信息要检查已有的配置信息,可以使用 git config --list 命令:$ git config --list- it配置文件 - /etc/gitconfig 对所有用户有效 - ~/.gitconfig 对当前用户有效 - {工作目录}/.git/config 仅对当前项目有效 - $HOME 或者 C:Documents and Settings$USER 下的.gitconfig - git安装目录下的/etc/gitconfig - 同上在类 unix 系统中,配置文件为:在Windows中对应分别为:对应命令:$ git config --system$ git config --global$ git config --local 或 $ git config帮助与参数资料想全面了解更完整和详细的说明,方法有三: - $ git help $ git --help $ man git- - 比如,要学习 config 命令可以怎么用,可执行: $ git help config其他配置选项除上面提到的选项外, 还有很多很有趣的选项去配置打包, 垃圾回收, 合并, 分支, http传输, diff, 分页, 空白字符等等的行为. 如果你需要更加深入地调教git, 请阅读git config文档.
三:生成patch及打补丁
在git中,我们没有必要使用diff 和patch做补丁,这样做即危险有麻烦。git提供了两种做patch的方法,一种是git diff生成标准的patch,另一种是使用git format-patch生成git专用的patch: 1:git diff生成标准patch: $ git branch $ aaa bbb $ git diff aaa bbb > patch $ git checkout bbb $ git branch test_patch $ git checkout test_patch $ git apply patch 到此patch补丁成功。你可以通过git diff test_patch aaa > differ 查看 2:git format-patch 生成git 专用补丁: $ git branch $ aaa bbb 起先aaa bbb 分支是一样的; 比如你在aaa分支做了对某一文件的修改, 之后你可以运行: $ git format-patch -M bbb /*M 表示这个patch要和哪个分支对比, 之后: $ git diff aaa bbb > patch $ git checkout bbb $ git branch test_patch $ git checkout test_patch /* 有时候以下两条命令不一定成功*/ $ git am patch_name $ git commit -a -m "patch apply" /* 如果遇到冲突 */ $ git am --abort 之后手动添加此patch 之后$ git commit -a 提交代码 /* 不成功你需要运行以下命令*/ $ git apply patch_name --reject $ git status /* 手动解决冲突*/ $ git commit -am "patch_name“ 假如aaa 与 bbb 之间有很多个版本差异,那么就会针对每个版本生成一个patch 3:两种patch的比较: - 兼容性:很明显,git diff生成的Patch兼容性强。如果你在修改的代码的官方版本库不是Git管理的版本库,那么你必须使用git diff 生成的patch才能让你的代码被项目的维护人接受。 - 除错功能:对于git diff生成的patch,你可以用git apply --check 查看补丁是否能够干净顺利地应用到当前分支中; 如果git format-patch 生成的补丁不能打到当前分支,git am会给出提示,并协助你完成打补丁工作,你也可以使用 git am -3进行三方合并,详细的做法可以参考git手册或者《Progit》。从这一点上看,两者除错功能都很强。 - 版本库信息:由于git format-patch生成的补丁中含有这个补丁开发者的名字,因此在应用补丁时,这个名字会被记录进版本库,显然,这样做是恰当的。因此,目前使用Git的开源社区往往建议大家使用format-patch生成补丁。
- GIT 搭建、定制、生成patch及打补丁、git基础操作命令
- git diff 生成patch, git apply patch 打补丁方法说明,以及分支管理的简单操作。
- git生成patch,应用到rpmbuild 打补丁
- git打补丁(patch)
- diff & patch 制作及打补丁(两种生成补丁的方式(git和diff))
- git 生成 patch的命令
- Git patch生成以及更新的命令
- git format-patch生成补丁命令详解
- linux打补丁和git打patch方法
- linux打补丁和git打patch方法
- linux打补丁和git打patch方法
- git 基础命令操作
- git 生成patch 方法
- git生成patch
- git patch生成方法
- 用git生成patch
- git生成patch文件
- git 生成patch
- 80后IT小生晒小户型家装
- java 中 ==与equals的比较
- Android Fragments 详细使用
- DB2错误信息
- cassandra 学习笔记
- GIT 搭建、定制、生成patch及打补丁、git基础操作命令
- Erlang中的二进制位串(2)
- shell中cut命令的使用方法
- mysql数据库千万级别数据的查询优化和分页测试
- 100%会遗传给孩子的11大特征。赶紧收藏!
- 什么样的服务器才能叫做大并发
- PL/SQL使用技巧点 快捷键
- Linux 操作系统内核升级及系统调用的添加
- DirectShow入门-3应用程序编程HelloWorld源代码