LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Same project, 2 PC's

I want to be able to develop on two different PC's the same Labview project.  The machine that actually runs the program doesn't have a network connection.  Is there an easy way to transfer projects back and forth?  If I choose File>Save As... and try duplicating the project, it gets messy and doesn't really work anyway because the location of your dependencies starts changing and you'd have to manually copy folders.  If version control software is the only real way then what's the most painless one to use with Labview?  Thanks.

0 Kudos
Message 1 of 10
(2,856 Views)

@Flohpange wrote:

If version control software is the only real way then what's the most painless one to use with Labview?  Thanks.


It probably depends on what you are most comfortable with.  SVN, and Perforce are two that generally work well with LabVIEW because they can support the Lock, Commit paradigm instead of the merge which most SCC focuses on.  This technique is less successful with LabVIEW because of the binary file format of the code.  But how is this a solution if you don't have a network connection?  

0 Kudos
Message 2 of 10
(2,834 Views)

Develop on a USB flash drive.  If you are using version control, remember to commit your changes when you get to a computer with access to the repository.

 

I find SVN with the Tortiose shell to be the best.

Bill
CLD
(Mid-Level minion.)
My support system ensures that I don't look totally incompetent.
Proud to say that I've progressed beyond knowing just enough to be dangerous. I now know enough to know that I have no clue about anything at all.
Humble author of the CLAD Nugget.
0 Kudos
Message 3 of 10
(2,820 Views)

I used to use a USB key to develop at work (a University) and also at home.  Remembering which version was which (and which was "the latest") was something of a nightmare.

 

For that past few years, i've taken advance of the University's Subversion Server, with my PCs running the (free) Tortoise Subversion Client.  I still need to remember to connect to the Repository (via the Web) and Update when starting an editing session, and to Commit when I finish, but this has saved my rear end numerous times.  Plus if I make a mistake, I can use Subversion to "go back to the previous working version and try that again".

 

Bob Schor

0 Kudos
Message 4 of 10
(2,793 Views)

Any SVN solution ignores the user's comp isn't on a network.  Developing on the USB is honestly his best solution.  I'm not sure why this would make anything difficult about remembering versions.  It's the same as having things on your HD

0 Kudos
Message 5 of 10
(2,778 Views)

@natasftw wrote:

Any SVN solution ignores the user's comp isn't on a network.  Developing on the USB is honestly his best solution.  I'm not sure why this would make anything difficult about remembering versions.  It's the same as having things on your HD


I find that using SVN with a USB drive works fine.  Set it up just like any other working copy.  Just make sure that you commit before you go to the workstation without the connection (and probably without SVN also) and commit again when you get back.

Bill
CLD
(Mid-Level minion.)
My support system ensures that I don't look totally incompetent.
Proud to say that I've progressed beyond knowing just enough to be dangerous. I now know enough to know that I have no clue about anything at all.
Humble author of the CLAD Nugget.
0 Kudos
Message 6 of 10
(2,771 Views)

That's a solution to a different problem.  Yes, it'll provide source control on the networked computer.  But, it has absolutely nothing to do with finding a way to get the project between the two computers.  Let's try an analogy.  It's a good idea not to program in a sauna.  Just like avoiding this bad practice, we should use source control to avoid another bad practice.  But, the two aren't related to how we'll get the project to another computer after we avoid these bad practices.

0 Kudos
Message 7 of 10
(2,756 Views)

I think I agree with Natasftw, particularly if you do all of your development work from the Flash Drive.  I may be restating an earlier opinion (I apologize in advance if so), but if one of your Development machines is networked, you can "have your cake and eat it, too" by making the Flash Drive be the SVN "Working Copy".  Let's say you have the Latest Version on the Flash Drive, but nothing (yet) in Version Control.

  1. Plug in to Networked Computer.  Build Repository to hold Working Copy (on Flash Drive).  Get Working Copy installed in SVN Repository.
  2. Disconnect Flash Drive from Networked Computer.  Current State -- Working Copy has been committed to SVN.
  3. Plug Flash Drive into Isolated Computer.  Make modifications to Working Copy.  Unplug.
  4. Plug Flash Drive into Networked Computer.  Before making modifications, Commit (adding notes about changes made on Isolated Computer).
  5. Modify Working Copy (Flash Drive) on Networked Computer.  Commit, with notes about Networked Computer modifications.  Unplug Flash Drive.

The code stays on the Flash Drive during development.  Modifications are only made to Flash Drive (Working Copy).  When plugged into Networked PC, commits are done first, then code, then commit, then unplug.  If anything happens to Flash Drive (like you lose it), simply plug a new drive into Networked Computer and do a Checkout.

 

Now that I think about this, I've actually done something like this once or twice, but was always very nervous doing development on a machine without access to SVN ...

 

Bob Schor

0 Kudos
Message 8 of 10
(2,737 Views)

I don't get it?  Isn't that what I was saying all along?

Bill
CLD
(Mid-Level minion.)
My support system ensures that I don't look totally incompetent.
Proud to say that I've progressed beyond knowing just enough to be dangerous. I now know enough to know that I have no clue about anything at all.
Humble author of the CLAD Nugget.
0 Kudos
Message 9 of 10
(2,725 Views)

@Bob_Schor wrote:

I think I agree with Natasftw, particularly if you do all of your development work from the Flash Drive.  I may be restating an earlier opinion (I apologize in advance if so), but if one of your Development machines is networked, you can "have your cake and eat it, too" by making the Flash Drive be the SVN "Working Copy".  Let's say you have the Latest Version on the Flash Drive, but nothing (yet) in Version Control.

  1. Plug in to Networked Computer.  Build Repository to hold Working Copy (on Flash Drive).  Get Working Copy installed in SVN Repository.
  2. Disconnect Flash Drive from Networked Computer.  Current State -- Working Copy has been committed to SVN.
  3. Plug Flash Drive into Isolated Computer.  Make modifications to Working Copy.  Unplug.
  4. Plug Flash Drive into Networked Computer.  Before making modifications, Commit (adding notes about changes made on Isolated Computer).
  5. Modify Working Copy (Flash Drive) on Networked Computer.  Commit, with notes about Networked Computer modifications.  Unplug Flash Drive.

The code stays on the Flash Drive during development.  Modifications are only made to Flash Drive (Working Copy).  When plugged into Networked PC, commits are done first, then code, then commit, then unplug.  If anything happens to Flash Drive (like you lose it), simply plug a new drive into Networked Computer and do a Checkout.

 

Now that I think about this, I've actually done something like this once or twice, but was always very nervous doing development on a machine without access to SVN ...

 

Bob Schor


Oh yeah.  You get so used to being able to back up your stuff when you want that it's scary when you can't.

Bill
CLD
(Mid-Level minion.)
My support system ensures that I don't look totally incompetent.
Proud to say that I've progressed beyond knowing just enough to be dangerous. I now know enough to know that I have no clue about anything at all.
Humble author of the CLAD Nugget.
0 Kudos
Message 10 of 10
(2,719 Views)