[ros-users] Rosco - ros.org checkout tool

Ibrahim Awwal ibrahim.awwal at berkeley.edu
Thu Aug 18 23:23:04 UTC 2011

Wow, that was an interesting coincidence. I guess I didn't really search
hard to see whether something like this existed. Hadn't considered branches
though, that's something to keep in mind. I think your tool is actually
better than mine with that in mind, mine could be replaced with a call to
yours and roslocate. I think one possible modification to your rosco to
make it just as easy as mine would be to have it check if the file argument
exists, and if not try running roslocate with that first argument as the
package name, and then read that snippet in and process it as usual.


On Thu, 18 Aug 2011 16:08:17 -0700, Ken Conley <kwc at willowgarage.com>
> Here's a different take on a similar idea.  It would be great to
> combine into one tool as I think they are coming from the same
> motivation of "gimme the code".
> https://code.ros.org/lurker/message/20110713.092005.2f102738.en.html
> To summarize:
> # checkout all entries in foo.rosinstall to this directory
> rosco foo.rosinstall
> # lookup snippet for eigen and check it out
> roslocate info eigen --distro=unstable | rosco
> script here:
> https://kforge.ros.org/kwc/rosco/raw-file/437f02319ff3/rosco
> The main distinction is my version takes in a rosinstall fragment
> either as a filename or piped output.  The piped output may not be as
> straightforward as yours for people to grok.
> The main upgrade that yours would need is to deal with branches/tags
> properly.  Many of the git/hg URIs require a specific branch.  Also,
> you often need to distinguish between the released version of a
> package vs. the development branch.
> cheers,
> Ken
> On Thu, Aug 18, 2011 at 3:30 PM, Ibrahim Awwal
> <ibrahim.awwal at berkeley.edu> wrote:
>> ... Because life's too short to spend time copying URLs off of ros.org
>> wiki
>> pages...
>> So, in a bout of severe laziness I wrote a tiny bash script to
>> automatically
>> checkout a package/stack that's listed on ros.org. I affectionately
>> it
>> rosco, short for ros checkout. You can grab it here:
>> https://gist.github.com/1155414 . If someone like this already exists,
>> will feel slightly foolish, but it took me a handful of minutes to
>> so
>> it's already saved me enough time to have been worth writing. It's
>> simple, stick it somewhere in your path (probably want to rename it to
>> rosco
>> and make it executable for ease of use) and then just give it the name
>> the package or stack you want to install. For example, all you need to
>> do to
>> check out the 3d_navigation stack (can't wait until it works btw!) is
>> type
>> `rosco 3d_navigation`, and it will look up the repository information
>> automatically and check it out. Currently supports svn, git, and hg,
>> because
>> those were the three that I noticed, haven't really found any
>> list of VCS software that's used in ROS packages though, mainly due to
>> lack
>> of trying (although I guess I could probably script that too). Depends
>> roslocate being on your PATH (which I guess comes as part of
>> Happy coding!
>> --
>> -Ibrahim Awwal
>> _______________________________________________
>> ros-users mailing list
>> ros-users at code.ros.org
>> https://code.ros.org/mailman/listinfo/ros-users
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users

-Ibrahim Awwal

More information about the ros-users mailing list