自有Git项目添加删除第三方Git库资源

目录
[1.采用git submodule命令]
[2.修改第三方库,直接提交其中文件内容到自己项目中]


1.采用git submodule命令

1)添加submodule

为当前工程添加submodule,命令如下:

git submodule add 仓库地址 路径

其中,仓库地址是指子模块仓库地址,路径指将子模块放置在当前工程下的路径。 
注意:路径不能以 / 结尾(会造成修改不生效)、不能是现有工程已有的目录(不能順利 Clone) 
示例: 

git submodule add -f git@github.com:spf13/viper.git  ./vendor/github.com

-f 是强制的意思,一般不需要加 。
命令执行完成,会在当前工程根路径下生成一个名为“.gitmodules”的文件,其中记录了子模块的信息。添加完成以后,再将子模块所在的文件夹添加到工程中即可。

git submodule status        //子模块状态
git submodule update        //更新子模块

2)删除submodule

submodule删除:

  • 首先要在“.gitmodules”文件中删除相应配置信息。
  • 然后执行“git rm –cached ”命令将子模块所在的文件从git中删除。 

3)下载工程带有的submodule

当使用git clone下来的工程中带有submodule时,初始的时候,submodule的内容并不会自动下载下来的,此时,只需执行如下命令:

git submodule update –init –recursive

即可将子模块内容下载下来后工程才不会缺少相应的文件。

2.修改第三方库,直接提交其中文件内容到自己项目中

在某些情景下无法通过链接公网获取对应github资源时,需要使用该方案。例如某arm产品中需要添加第三方git资源,但无法链接外网,只能链接内网中自有第三方资源。

在提交第三方库资源之前,一定要删除或修改该第三方项目中的.git目录。建议将其改名,使第三方.git其无法生效,再git add ,commit等,并最终push推送到自己项目库中。

如果已经提交第三方资源库,但远端实际没有其真实文件内容,则必须删除本项目中引入的第三方资源库路径。然后再重新拷贝该第三方资源库到当前项目中,在此之前一定要删除该第三方项目中.git目录,再重新git add /commit/push等操作,即可将第三方库所有文件引入自有项目中。

标签:

发表评论

邮箱地址不会被公开。 必填项已用*标注