I have following problem:
3 people are working on the same Java project and want to share a workspace so we can all work together. Our computers are connected to a local network, but we want to share the workspace created in one computer.
Git is currently the standard tool to use in this case. There are others but I would recommend using it over anything else. It is also free.
http://git-scm.com/
After downloading and installing on each of your machines create a public repository to store the project.
Here is the getting started page:
http://git-scm.com/book/en/v2/Getting-Started-About-Version-Control
Multiple Eclipse instances would NOT run well on the same "physical" files. Eclipse does not even reload directories when there are modifications. This means, you get trouble if you sync the filesystems.
The best way to work together and share the code is to use some kind of revision control system, i.e:
git
SVN
Mercurial
I would look into setting up some kind of version control, like Git, and some hosting service.
Related
Alright, me and a few others are looking to work on a project together, and we have our own VPS to host the server as it runs, but the problem is that we need to be able to access the source at the same time to edit things; now I'm wondering if there's some sort of way to set it up via FTP or something, and if so, what if we were to unknowingly access and save the same file, it would cause loss of data.
How can a few people and I access a source project hosted on a server at once without loss of data? To clarify, we're using Netbeans as our IDE, and it is a Java project, JDK 8, contains anything from text files, to image files, to java source files, so it can't restrict file types.
The universal way to work on a codebase as a group is through a version control system. Version control systems allow for the merging of code to prevent data loss and give you full line-by-line history of your project. Git is probably the defacto at this point in time, and loads of sites will let you host Git repositories for free.
GitHub is one of the most widely used Git repository hosts. They offer free hosting for open-source ("public") repositories.
BitBucket is another monster, and they offer free hosting for both open and closed source repositories.
You can find many others with a simple web search. GitLab supposedly allows you to setup a simple local repository which may be what you're looking for.
You can refer to the Using Git Support in NetBeans article to get started.
Has anyone managed to build out a way to use Sublime Text 2 (or 3) instead of eclipse for their java-based app? We've got java in eclipse (mac), with maven and git support. We don't 'build' in eclipse, per-se. Instead when necessary we just either refresh the projects or restart the tomcat server--usually though, we can just make changes and reload the browser.
To be clear, the app is single-page-architecture built on java/mysql, with a dojo javascript framework on the front end.
Suggestions?
There is no problem with switching to SublimeText2/3 in almost any language.
There are multiple git packages that help you with using it, such as full integration, merges and everything else you may need.
Even if you would build or simply needed to restart the tomcat server you can write your own build system that will run everything you need just like you would manually do in terminal.
SublimeText works exceptionally well with JS and it's frameworks as well as code-in-code - different languages one in another.
Maven package is available
Now to the parts that you would probably miss when switching from other IDE's.
IntelliSense - SublimeText has a package named CodeIntel that will help with that, but it's not working that good in comparison to other IDEs.
MySQL - SublimeText has no way to integrate DB management.
I have a desktop at work, and a laptop at home. I do not carry my laptop to work. Is there an accepted way to use the same NetBeans Java project from both machines?
I currently store the project in a Dropbox folder and access it from both machines. It works 95% of the time, but I occasionally have little glitches (library references, filename case-sensitivity, etc).
I have used a shared network drive, but the latency when compiling and deploying from home isn't acceptable.
I guess I could commit it to SVN everyday, but I probably won't always remember.
Looking to know how others might approach this.
Source control is the best option here, You could use some free SVN/GIT service provider too for your private project
See
https://stackoverflow.com/questions/59791/free-online-private-svn-repositories
Create a bare git repository in your dropbox folder and push/pull from that at home and work. It works very well, and its not that hard to remember. The nice thing about git is that you only need shared disk, which dropbox takes care for you. You don't need a server.
I'm part of a project java and we use a netbeans plugin named Team Server. This plugin allow you to create a project in java.net and work it under Kenai infrastructure. It is really easy to use.
I am a Android Developer and I want to establish the Subverson
Now I have configure my eclipse with the plugin Subclipse properly and SVN is also properly configured by checking in perspective .Now I am not getting any idea how to use it ,how to create svn server, the local repository to svn and how can I share a project in LAN so my team can work on same project.I have surf lot on net but I am not getting any proper way ....
Subversion requires that there be a central repository/server on which to store all your data. So, you should decide whether you want to host this in-house, or whether you wish to outsource the repository hosting:
In-house Repository
An SVN server does not require a lot of resources, thus does not require the fastest hardware available, just make sure you have a reasonable amount of disk space available - depending on the types of items you are storing (multimedia files, Jars, images, etc).
Without going into the details on installing and configuring the server, just head to Apache to download a suitable binary, and follow their installation instructions. While you can get away with creating just a single user in the server, I would recommend creating one for each team member as this makes it easier to see who last checked-in a file.
Outsourced Repository
There are several organisations that are able to host your project(s), and the choices are determined by whether your project is open or closed source.
Open source projects have several FREE options, such as Google Code or the old favourite SourceForge.
For Commercial closed-source projects, if you have the budget you could opt for a paid service, such as JIRA Studio from Atlassian, who offer SVN hosting, plus their suite of tools - however this is not free. There are probably many other such commercial offerings, however I've not used them personally, so cannot comment on them.
Using Subversion
With most of the setup information out of the way, you'll need to know how to use subversion itself.
Basically, once you have linked your project to SVN, your day-to-day use of SVN will probably consist of the following steps:
Edit Source code
Update from HEAD (to incorporate other changes)
Resolve any conflicts that occurred from other users updating the same line of source code as yourself
Commit your changes to the repository
Repeat
When it comes to releasing your software product, it is common to use the Tagging functionality of SVN, which tags the current revision of each item in your repo with a given name (such as "MyProduct-1.0.0"), allowing you to continue development on the HEAD branch, but still recreate this version at any point in the future.
You will probably find this ebook to be of particular help when it comes to using SVN.
HTH
Subversion uses a client-server model unlike tools like Git that consist of clients. It appears that you are trying to use subversion without a server. I would recommend installing subversion and then following a tutorial such as this one to set up a repository for your team to use.
I'm new to development and I'm sure this is a silly question but i can't work out how i should be backing-up copies of my project.
When everything's working right i want to save a copy/make a back-up so that if i ever mess everything up i'll have something i can go back to, but of course it's not as simple as just copying a file like i normally would for anything else. Sorry for the silly query, but if someone could point me in the right direction as to how i should go about this that would be great!
It's not a silly question. You can back up your project directory (just make a copy, zip, etc) but I would advise you to have a look at version management (cvs, subversion, git, whatever you like). With version management you can go back to any state, create different development branches etc...
When everything's working right i want
to save a copy/make a back-up so that
if i ever mess everything up i'll have
something i can go back to
A version control system is perfect for you. Eclipse allows to clone your repository into a version control system such as CVS, SVN, Mercurial, Clearcase, Git, etc.
For me, I use Mercurial (previously using SVN), and its Eclipse plugin can be found on JavaForge.
I find Mercurial to be very handy.
It requires no server, but it still allows for multiple developers on the same project by splitting the program into two different branches of development and merging them together when complete.
Even without resorting to a version management, Eclipse provides a similar feature:
in the Preferences, go to General -> Workspace -> Local History
You can export your project as an archive and just save it somewhere, then import it whenever you need/want to. Just right click on the project, choose export and follow the instructions
Version control software is usually the best option, allowing you to create branches and browse revisions easily.
If you're on Windows, you can set up a local SVN repository using VisualSVN server very quickly.
If you'd want the repository online, have a look at Google Code (only open-source) or Assembla (they mostly offer paid services, but do provide nice and free SVN or GIT repositories).