(3)参与ardupilot项目编程——git实践
2016-04-27 23:20
281 查看
(3)参与ardupilot项目编程——git实践
git在windows中的用法我就不进行翻译了,因为我用linux平台。对于用windows的伙伴可以百度一下,或者到官网看资料下面主要学习如何更新自己的本地资源库和github账户下的更新,保持资源库最新,跟上世界各地的开发者的进度。
变基工作流:保持你的代码最新
当你进行开发的时候,(原始的)ArduPilot资源库主分支很可能会更新,你应该保持你复制的本地分支是目前最新的。变基允许最新的原始资源库再次应用你的修改,这使得项目更容易合并。我的tip:这里把Rebasing 翻译为变基,我的理解是改变原来的基本,基础。也就是说拟开发所依赖的原始资源库(基本的,基础的)发生了改变、更新,而变基是更新依赖的原始库,使你开发所依赖的库是最新的。
下面的命令可以用来对你的复制资源库变基。你可以在linux/OSX终端输入这些命令,或者windows上安装的“Git Shell”程序使用这些命令。
1.去到ardupilot目录
cd <ardupilot-path>
2.确保你在主分支
git checkout master
如下图转到主分支了
3.保证你保证你复制的资源库与顶层资源库(原始的)连接上
git remote add upstream https://github.com/ArduPilot/ardupilot.git[/code] 4.从顶层资源库获取更新git fetch upstream
执行这个命令你需要等待一段时间,更新可能要花好几分钟,具体看电脑和网络环境,更新结果可能会如下图那样
5.从当前顶层资源库对你的当前分支变基git rebase upstream/master
6.保证你的资源库与你在github的资源库保持连接。git remote add origin https://github.com/your-github-account-name/ardupilot.git[/code] 结果如下图,origin库确认存在
7.推送新的顶层库(master)到你的github资源库git push origin master
提示输入gihub账户的用户名和密码,更新后结果如下图所示研究子模块
Ardupilot 对PX4的开发平台是基于的使用下面三个资源库的平台:
· PX4Firmware
· PX4NuttX
· uavcan
这些Ardupilot项目的Git 子模块,在需要时会被自动获取成为编译的一部分。要了解研究这些项目的更多信息请参考Git 子模块。(后续将会在Ardupilot源码学习的博客中更新)小结
本文重点是介绍了变基的实现过程。个人理解,变基就是把工作的基础资源库进行更新。因为我们复制了项目的主资源库到自己的账户下,并且克隆到了本地电脑,自己账户下的资源库和本地资源库除了自己进行的修改和更新外,没有其他变化。而项目的主资源库由世界各地的开发者不断开发,还不断地被更新和修改。因此为了我们自己的开发跟上项目的进展,需要对我们复制的和克隆的原始主资源库进行更新,也就是我们会在新的基础资源库上继续开发。我把rebaseing翻译为“变基”不知道是否合适?
相关文章推荐
- Java ArrayList 的不同排序方法
- java.util.regex.PatternSyntaxException: Unclosed character class near index解决办法
- python中的排序函数
- python给初学者的一些技巧和知识
- java 基础一
- SpringMVC注解@initbinder解决类型转换问题
- C语言的特点总结
- Socket编程原理
- [Python2.7]python关于sys.agrv的使用
- Python35爬虫爬取百度歼击机词条
- RxJava Single&Subjects
- java编写简易扑克牌游戏
- 抽象类和接口
- 统计字符串中每个单词出现的次数 for C++
- 关于read与readLine方法的差别,留给初学java的童鞋的,周六会更新详细解析
- Python学习之中文编码
- Java ,从char 和 Character到内存分配
- C++变量命名规则
- 2016.4.27
- Struts2 Annotation 注解配置