bdjhx 发表于 2018-9-21 06:22:19

golang项目git-subtree完美解决差异包管理

  目标:
  1.把golang官方已移动过url的包跟随自己的项目git代码上传到项目源码中.
  2.把或自己修改过的差异化fork包跟随自己的项目git代码上传到项目源码中.
  解决方案:
  方案1.第三方包管理
  http://tleyden.github.io/blog/2016/02/08/adding-vendoring-to-a-go-project/
  方案2.手动处理过程
  a.在项目根目录下创业文件夹 "/vendor/src"
  b.通过git-subtree下拉包到上一步目录下,红包部分即要安装的包地址
  

git subtree add --prefix github.com/jacoblai/yiyidb https://github.com/jacoblai/yiyidb.git master --squash  

  

  c.须要列新包时可以把add参数改为pull执行一次即可
  d.添加vendor文件夹和push到git源码中
  

$ git add vendor  
$ git commit -m "..."
  
$ git push origin master
  

  

  完成
  后记:
  通常在开发中都会不断增加其他引用包,这个时候只需要执行完git subtree add后再执行
  

git push origin master  

  即可


页: [1]
查看完整版本: golang项目git-subtree完美解决差异包管理