<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://www.jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://www.jackxiang.com/post//</link>
<title><![CDATA[Git版本控制之Git fetch和git pull的区别]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[版本控制]]></category>
<pubDate>Thu, 22 Jun 2017 16:28:17 +0000</pubDate> 
<guid>http://www.jackxiang.com/post//</guid> 
<description>
<![CDATA[ 
	背景：常常我们用git pull 命令较多，而用git fetch较少，这两者有可区别，而我们在开发时可先用git fetch再git merge可能更安全一些，因为咱完全不用像git pull一样立即就自动merge可以用git diff进行比对。<br/>Git中从远程的分支获取最新的版本到本地有这样2个命令：<br/>1. git fetch：相当于是从远程获取最新版本到本地，不会自动merge<br/>git fetch origin master<br/>git log -p master..origin/master<br/>git merge origin/master<br/>&nbsp;&nbsp;&nbsp;&nbsp;以上命令的含义：<br/>&nbsp;&nbsp; 首先从远程的origin的master主分支下载最新的版本到origin/master分支上<br/>&nbsp;&nbsp; 然后比较本地的master分支和origin/master分支的差别<br/>&nbsp;&nbsp; 最后进行合并<br/>&nbsp;&nbsp; 上述过程其实可以用以下更清晰的方式来进行：<br/>git fetch origin master:tmp<br/>git diff tmp <br/>git merge tmp<br/>&nbsp;&nbsp;&nbsp;&nbsp;从远程获取最新的版本到本地的test分支上<br/>&nbsp;&nbsp; 之后再进行比较合并<br/>2. git pull：相当于是从远程获取最新版本并merge到本地<br/>git pull origin master<br/>上述命令其实相当于git fetch 和 git merge<br/>在实际使用中，git fetch更安全一些<br/>因为在merge前，我们可以查看更新情况，然后再决定是否合并<br/>结束<br/><br/><br/>来自：https://zhidao.baidu.com/question/200204875340723965.html<br/>=====================================================<br/>模拟实践如下：<br/><br/>$git fetch origin master<br/>From gitlab.boosh.com.cn:lvdev/jackxiang.com<br/> * branch&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;master&nbsp;&nbsp;&nbsp;&nbsp; -&gt; FETCH_HEAD<br/><br/>如果有变化，可：<br/>$git diff<br/><br/>$git merge origin/master<br/>Merge made by recursive.<br/> .../static/js/manifest.334733dc1613e9cc4ac4.js&nbsp;&nbsp;&nbsp;&nbsp; &#124;&nbsp;&nbsp;&nbsp;&nbsp;2 ++<br/> .../static/js/manifest.334733dc1613e9cc4ac4.js.map &#124;&nbsp;&nbsp;&nbsp;&nbsp;1 +<br/> 2 files changed, 3 insertions(+), 0 deletions(-)<br/> create mode 100644 jackxiang.com/static/js/manifest.334733dc1613e9cc4ac4.js<br/> create mode 100644 jackxiang.com/static/js/manifest.334733dc1613e9cc4ac4.js.map<br/><br/> 重来一次，这次fetch时结果没有变化的情况：<br/> From gitlab.boosh.com.cn:lvdev/jackxiang.com<br/> * branch&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;master&nbsp;&nbsp;&nbsp;&nbsp; -&gt; FETCH_HEAD<br/><br/> $git merge origin/master<br/>Already up-to-date.<br/><br/>
]]>
</description>
</item><item>
<link>http://www.jackxiang.com/post//#blogcomment</link>
<title><![CDATA[[评论] Git版本控制之Git fetch和git pull的区别]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://www.jackxiang.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>