[SOLVED] Where have all my files gone

(Paraphrase of Peter, Paul and Mary’s song - Where have all the Flowers Gone)
I make a zip file backup before/after big changes. I wanted to go back a version after partially implementing JBullet but, found my two main files haven’t been updated since 11/02/15. I work on them 20 times a day. Where are current source files kept? Not in the src directory. See png file showing the zip file from 11/22 and the Ant.jave file from 11/2/15.


In your picture, you are looking in a zip. How old is that zip? We have no idea how you made the zip.

If you edit in the SDK and want to know where the file is actually located, just hover the mouse over the tab title.

Note: in the long run, you’d probably be happier just using version control instead of manually zipping everything all the time. You’d also gain the ability to easily try old code, diff against history, look at the comments of what you’d done, etc… It takes about five minutes to setup SVN.

+1 for learning to use a version control system. Have a look at bitbucket or github. Using those you get version handling and an offsite backup at the same time.

Well… 0.75f for learning version control.
Somewhere in the JMonkey docs was a line about using SVN as a first choice. Fortunately, I have years of experience with DOS and wasn’t too intimidated with the command line interface. I stumbled around and created my repository in file:///E:var/svn/repos/Anthill. Then I want to JME and tried to checkout files. It stopped complaining when I got the correct syntax for the file but, then I clicked Next, I got this:
org.apache.subversion.javahl.ClientException: E180001: Unable to open an ra_local session to URL
E180001: Unable to open repository ‘file:///E:var/svn/repos/Anthill’
E160043: Expected FS format between ‘1’ and ‘5’; found format ‘6’
I didn’t find anything like it searching. It seems to have found it but, is the wrong version of version control. :wink:

I’m looking at Github now…

If you’re not to the point that you need off-site backup, just look at plain git. Commandline, but not all that complicated to do the basics. No need for a server-client setup. Plus, all that can help you understand what github, etc are doing under the hood.

OK. Thanks. That sound easier.

Your files have gone to war and won’t return… :wink:

But this reminds me of that weird thing that happened a few days ago where Eclipse reverted 2 hours of work on my assets. Good thing I had 4 backups. :smile:

Maybe it’s the evil errors we have been talking about due to overclocking and just random errors in general :stuck_out_tongue:


As for “where are my src files!” you can goto “files” in your IDE, and right click a project and click “goto file location” or w/e, and it will bring you directly to the src.

This might sound… “stupid” but have you actually updated the ant.java file since 11/2??? If a file isn’t updated, but the rest of the program is, I believe that it will not update unless you actually save over it. If I’m wrong, let me know please, but that’s what would make sense (like any file you edit).

Since we are talking about Version Controlling, I’m curious about the individual ones. I use github for myself, but for business I don’t put anything up on anything.

It seems there are ways to do version controlling, without making the code “public,” but I’m curious which ones are the most private/safest to keep business related work on? Is there a way to do version controlling without connecting to a site like github, and do it on your own machine?

Thanks all :smile:

Yes. See “documentation for literally any version control system” for how to set it up for “your particular version control system”. GIT, SVN, etc. can all run locally.


You can also use TortoiseGit, if you are the GUI type of user (i.e. for Windows).

Thanks :slight_smile:

Wait! What?
No. How do I update the Ant.java… Silly me. I thought you meant update the Ant build file - I hope that that is automatic. Funny how I have a java file with a JME term. Oh, yes. I’ve updated Ant.java a million times since then.
So, I can’t get my files into my .git file.

  1. using MINGW64 Shell - i have a .git file on [quote]E:/var/git/Anthill/.git[/quote] but my files are on [quote]C:/…/Anthill/src[/quote] How do I tell git Add where they both are? I tried (in the Anthill dir) “git add C:/Users/…/Anthill/src .” but it can’t find the files. It say, C:/…/src is outside repository.
  2. In JME IDE, how do i get the context menu to kick in. I checked and the git plugin is installed. I was able to create the .git file. On Team> Git, I only have Clone, Initialize and Repository Browser. I had the Git Repo Browser window with my .git file once but, it’s not coming up there anymore.

If I’m reading this right, the first misunderstanding is thinking that a git repository is in a separate location than the working files. Git keeps it’s repo right where you are working.

What you want is to CD to


And then run

git init

Now, run your add commands.

git add *

Will grab all subfolders, including lib and build if you have such. If you only want your source folder under control, use

git add src

You do all your committing, etc right from here. You will have to commit right after you’ve finished adding the files you want to track. You can do more complex filtering, like only track .java files.

If you wish to use the E:\ location for backups, read some tutorials on seeing up a remote repository - you still work and commit locally, but then you push to another location.

Git - Book is a good, very detailed resource. Google is also your friend here, but read at least the first couple chapters of the book through to get an overview and some idea of what terms to search for.

1 Like

Cool. Thanks. Yes, you read that correctly. I was trying to backup to a CD - but not to the cloud - so I ignored the stuff about remote backup.
Ok. It looks good now.
Thanks again. :smile:

If you just want a hard media backup on CD, etc, just copy the entire anthill directory to your backup media at regular intervals. This will grab your entire git repo, so watch sizes… As the project progresses, that will get bigger. Don’t discount the cloud entirely. Bitbucket, for example, allows smaller projects (up to 5 devs) private space for free. Handy as an off site backup, just in case disaster strikes and your computer and CDs get chewed to shreds by the neighbor’s dog :slight_smile:

In Germany some folks say “die Cloud klaut” (the cloud is stealing). :chimpanzee_amused:
A CD might be better than any cloud that is not under your own control.

Is this based on any actual incidents, or just a misunderstanding of what “the cloud” actually is? It does not mean that your data will end up on whatever random, un-vetted server space is cheapest. In this case, bit bucket is a professional service that makes their money by providing secure, remotely accessible repositories and supporting infrastructure to larger teams… Whose livelihood depends on the confidentiality of the code. They give away free access for smaller teams as a marketing technique - they want you to be used to their systems, and to trusting them when your project gets big enough. That way, their paid solution will seem a natural fit. Any misuse of code hosted on their servers would ruin their reputation and cost them a lot more in lost profits than they would ever make from the piracy.

If you say so. I would at least encrypt the text myself before trusting someone.
Problem with personal encryption remains: In a couple of years when the next iteration of the “D-Wave” supercomputer is available, then encryption will be pointless against those who have Millions to buy such a device (i.e. the NSA or big companies like Google).
And there is another problem with personal encryption: It is an extra step that might not be part of the cloud API.

There is currently a trend in Germany that companies demand for cloud servers to be at least located in this country. Since the Snowden thing happened, the trust to American companies is at an all time low here.
I would not even trust a German company either.

My data is always backed up manually several times a week and brought to remote locations from time to time personally. My biggest fear is currently that this computer gets hacked in the future and I’m plotting to do something against this thread - e.g. switch to Linux and put a second computer under my desk that has the internet connection while my coding machine is offline all the time.