(3)参与ardupilot项目编程——git实践

(3)参与ardupilot项目编程——git实践

git在windows中的用法我就不进行翻译了,因为我用linux平台。对于用windows的伙伴可以百度一下,或者到官网看资料

下面主要学习如何更新自己的本地资源库和github账户下的更新,保持资源库最新,跟上世界各地的开发者的进度。

变基工作流:保持你的代码最新

当你进行开发的时候,(原始的)ArduPilot资源库主分支很可能会更新,你应该保持你复制的本地分支是目前最新的。变基允许最新的原始资源库再次应用你的修改,这使得项目更容易合并。

我的tip:这里把Rebasing 翻译为变基,我的理解是改变原来的基本,基础。也就是说拟开发所依赖的原始资源库(基本的,基础的)发生了改变、更新,而变基是更新依赖的原始库,使你开发所依赖的库是最新的。

 

下面的命令可以用来对你的复制资源库变基。你可以在linux/OSX终端输入这些命令,或者windows上安装的“Git Shell”程序使用这些命令。

 

1.去到ardupilot目录

 
  
cd  

2.确保你在主分支

 
  
git checkout master
如下图转到主分支了

3.保证你保证你复制的资源库与顶层资源库(原始的)连接上

 
  
git remote add upstream https://github.com/ArduPilot/ardupilot.git

4.从顶层资源库获取更新

 
  
git fetch upstream

执行这个命令你需要等待一段时间,更新可能要花好几分钟,具体看电脑和网络环境,更新结果可能会如下图那样

(3)参与ardupilot项目编程——git实践_第1张图片

5.从当前顶层资源库对你的当前分支变基

 
  
git rebase upstream/master

6.保证你的资源库与你在github的资源库保持连接。

 
  
git remote add origin https://github.com/your-github-account-name/ardupilot.git

结果如下图,origin库确认存在


7.推送新的顶层库(master)到你的github资源库

 
  
git push origin master

提示输入gihub账户的用户名和密码,更新后结果如下图所示

(3)参与ardupilot项目编程——git实践_第2张图片

研究子模块

Ardupilot 对PX4的开发平台是基于的使用下面三个资源库的平台:

·        PX4Firmware

·        PX4NuttX

·        uavcan

这些Ardupilot项目的Git 子模块,在需要时会被自动获取成为编译的一部分。要了解研究这些项目的更多信息请参考Git 子模块。(后续将会在Ardupilot源码学习的博客中更新)

小结

本文重点是介绍了变基的实现过程。个人理解,变基就是把工作的基础资源库进行更新。因为我们复制了项目的主资源库到自己的账户下,并且克隆到了本地电脑,自己账户下的资源库和本地资源库除了自己进行的修改和更新外,没有其他变化。而项目的主资源库由世界各地的开发者不断开发,还不断地被更新和修改。因此为了我们自己的开发跟上项目的进展,需要对我们复制的和克隆的原始主资源库进行更新,也就是我们会在新的基础资源库上继续开发。我把rebaseing翻译为“变基”不知道是否合适?

你可能感兴趣的:(飞控apm学习笔记,计算机科学及编程)