系统环境:ubuntu14.04_x86_64linux
IDE:Eclipsegit
假定:ubuntu
1. 已经安装Eclipse,并支持EGitspa
2. 已有Git@OSC帐号索引
在Git@OSC上建立主工程just4test,子模块工程submodule,参考以前的文章。ip
1. 右键主工程,Add Submodule...it
2. 填写子模块存放路径,Nexttest
3. 复制子模块Git@OSC中创建的SSH连接import
4. 粘贴到添加子模块源Git仓库的URI,Finishmodule
5. 此时,子模块已经添加到主工程对应的目录下了
1. 这里导入通常的文件或目录能够选择import,可是比较大的工程好比linux 内核,会有许多连接目录,因此选择直接把目录复制到工程目录下,执行 cp -arp source_path/. repository_path
2. 此时工程目录下的新增文件或目录会显示问号,表示未被添加到git 索引
3. 右键工程》Team》Add to index,添加全部新增文件和目录到git 索引
4. 右键工程》Team》Commit,提交到本地仓库
5. 右键工程》Team》Pull,拉取远程仓库,查看是否须要合并
6. 右键工程》Team》Remote》Push,推送到远程仓库
1. 在git视图下,checkout 本地分支
2. 右键子模块,执行拉取操做Pull
3.右键子模块,执行Sync Submodule
1. git子模块各类坑,工程分子模块时要特别当心。既要防止复制漏了隐藏文件,又要留意工程里的.gitignore文件。
2. 在推送远程以前,最好先将子模块单独克隆到本地,检查一致后再执行推送操做。
3. 对于空文件夹,能够添加.gitignore