git在commit的时候会启动第三方编辑器去编辑commit。
这时git是如何检查commit写好或者第三方编辑器被关闭了呢?
这时git是如何检查commit写好或者第三方编辑器被关闭了呢?
1
robertlyc Jun 11, 2014
git config --global core.editor "mate -w"
|
2
Mutoo Jun 11, 2014
|
3
billlee Jun 11, 2014
man 2 waitpid
|
4
xieranmaya Jun 12, 2014
传给第三方编辑器的路径是.git目录下的COMMIT_EDITMSG这个文件,编辑器直接编辑这个文件,同时git也在监控这个文件,文件被关闭后就拿文件内容当ci msg
|
5
robot9 Jun 12, 2014
Fork一个process等它返回就好啦
可以先指定写到一个临时生成的文件里 之后直接读那个文件 |
6
kneep Jun 12, 2014 via iPhone
等待进程退出吧
|