176.11. FAQ

简介:

176.11.1. 导出最后一次修改过的文件

有时我们希望把刚刚修改的文件复制出来,同时维持原有的目录结构,这样可能交给运维直接覆盖服务器上的代码。我们可以使用下面的命令完成这样的操作,而不用一个一个文件的复制。

git archive -o update.zip HEAD $(git diff --name-only HEAD^)
			

176.11.2. 导出指定版本区间修改过的文件

首先使用git log查看日志,找到指定的 commit ID号。

			
$ git log
commit ee808bb4b3ed6b7c0e7b24eeec39d299b6054dd0
Author: 168 <lineagelx@126.com>
Date:   Thu Oct 22 13:12:11 2015 +0800

    统计代码

commit 3e68ddef50eec39acea1b0e20fe68ff2217cf62b
Author: netkiller <netkiller@msn.com>
Date:   Fri Oct 16 14:39:10 2015 +0800

    页面修改

commit b111c253321fb4b9c5858302a0707ba0adc3cd07
Author: netkiller <netkiller@msn.com>
Date:   Wed Oct 14 17:51:55 2015 +0800

    数据库连接

commit 4a21667a576b2f18a7db8bdcddbd3ba305554ccb
Author: netkiller <netkiller@msn.com>
Date:   Wed Oct 14 17:27:15 2015 +0800

    init repo
	   		
			

导入 b111c253321fb4b9c5858302a0707ba0adc3cd07 至 ee808bb4b3ed6b7c0e7b24eeec39d299b6054dd0 间修改过的文件。

$ git archive -o update2.zip HEAD $(git diff --name-only b111c253321fb4b9c5858302a0707ba0adc3cd07)
			

176.11.3. fatal: The remote end hung up unexpectedly

error: RPC failed; result=22, HTTP code = 413 | 18.24 MiB/s
fatal: The remote end hung up unexpectedly
			
git config http.postBuffer 524288000
			

176.11.4. 回撤提交

首先 reset 到指定的版本,根据实际情况选择 --mixed 还是 --hard

			
git reset --mixed 096392721f105686fc3cdafcb4159439a66b0e5b --
or
git reset --hard 33ba6503b4fa8eed35182262770e4eab646396cd --
			
			
			
git push origin --force --all
or
git push --force --progress "origin" master:master
			
		




原文出处:Netkiller 系列 手札
本文作者:陈景峯
转载请与作者联系,同时请务必标明文章原始出处和作者信息及本声明。

目录
相关文章
|
编解码
|
NoSQL MongoDB 数据库
|
KVM 虚拟化 开发工具
|
Oracle 关系型数据库 MySQL
|
Java 开发工具 前端开发
|
网络协议
|
Web App开发 应用服务中间件 nginx