减少git子树提交日志噪声

时间:2014-05-22 23:19:15

标签: git github yeoman git-subtree

我使用Yeoman部署我的网络应用程序。根据{{​​3}}的建议,我使用git subtree部署我的网站,执行以下操作:

  1. grunt build
  2. git add -A dist
  3. git commit -m "New release"
  4. git subtree push --prefix dist origin deploy
  5. 然后,在登台服务器上,我第一次这样做:

    1. git init
    2. git remote add -t deploy -f origin git@github.com:cdmckay/example.git
    3. git checkout deploy
    4. 然后,每次我都这样做:

      git pull
      

      然而,这导致了一些我不喜欢的事情。

      首先,我的master分支现在有dist个文件夹,我觉得这很难看。

      其次,我的git历史记录充满了New release消息,因为每次我想将Yeoman应用程序推送到我的登台服务器时,我都要再次提交。

      是否有更好的方法来设置我的部署,以便我可以将dist文件夹保留在master分支之外并删除部署提交消息?

1 个答案:

答案 0 :(得分:1)

拉动是否需要进行内容合并,或者完成替换是否足够?

完全替换是build

git tag -f dist `git commit-tree -m - master:dist`
git push -f origin dist

并在登台服务器上:

git checkout -f dist  # possibly with `-f`

git没有将HEAD附加到标签,并且此标签是无历史记录提交,因此没有什么可以不同步,这是一个带有一次性标记名称的原始内容推送。