How does ros execute my nodes on a remote machine?
When specifying the machine-tag for a ros-node in a launch-file one is principally able to run a ros-node on any reachable machine in the network that is configured for ros. Do I get this right? If yes, I am wondering about the following questions:
- How does this work when I developped the code for my node on machine A and I execute it on machine B. Somehow, the binary must be transmitted, doesn't it?
- What happens, if machine B contains a conflicting older version of the same node, which version will be executed?
- Given the case that a team of programmers develops ros-nodes on different machines and all nodes are finally executed using a launch-file on another machine - let's name it master-machine - that runs the roscore: Although they merge their changes using a VCS and this could theoretically be checkout and built on the master-machine in advance of every execution of the launch-file, is there a possibility to simply update the code on the master-machine (e.g. using roscp)?
(the wiki told me to include this: http://wiki.ros.org/ROS/Tutorials/Mul... )