maanse — 2014-06-11T13:30:12-04:00 — #1
Ive been doing quite a few projects recently using HTML5, CSS, PHP and a little JS/Jquery, my question is how do you guys go about righting code what software/websites do you use? Because depending on whether im at the office or working from home or any other location, i find myself hopping between Computer (at home), Computer (at office), Laptop etc... so currently i have Wamp installed on all 3 but seem to spend way to much time transferring the latest version of a project to the correct machine.
Any suggestions, ive had a look around at things like codeanywhere and jsfiddle but all have limitations or cost....
mawburn — 2014-06-11T14:02:26-04:00 — #2
You are talking about source control, more than online IDEs.
Git is the most popular right now, it's very good.
BitBucket is a free private git repository host.
SourceTree is a really good Git GUI for Windows and Mac. Smartgit/Hg is good for Linux.
But if you still want an online IDE, you could look into Koding or Cloud9.
I have played around with both, but haven't seriously used either. I've heard from others that they are a little hard to use. Even if you use one of these, I still suggest Source Control to keep versions of your source code.
sg707 — 2014-06-12T12:39:08-04:00 — #3
Definitely, having Source Control Management tool will help but you may still need to sync up. SCM will help you sync up the source files but the development environment itself (ex. server configuration, os software, etc...) If you are the only one working on a project then why not setup Remote Desktop w/ daily backup?
scout1idf — 2014-06-12T13:28:31-04:00 — #4
I use EasyPHP on a flash drive.
It's simple to use and portable, just unplug it and take it with you.....
maanse — 2014-06-13T09:16:37-04:00 — #5
This seemed like a good option although, i signed up for bitbucket and downloaded Source tree. Im sure there has to be an easier way. I think its actually less work to manually copy the data to the device im working on... im sure its me doing something wrong but it just seems to faffy. Also Cloud9 and Koding are paid services so not really what im after.
Remote desktop isn't always an option like when im not connected to the internet (rare but does happen). I dont think im feeling the need for SCM, doesnt seem beneficial to me.
I didnt know easyphp could be run as a portable app.... this seems like the least hassle solution to me.
mawburn — 2014-06-13T10:03:34-04:00 — #6
Really? It only takes me 2 clicks to upload and 1 click to clone the latest version. I don't think there is an easier way other than Dropbox (in fact, Dropbox is built on the same principles). There are lots of tutorials on how to use Git. There are alternatives to Git, but idk why you would use them. Git is by far the easiest.
You should be using some form of source control on all your code anyway. It saves you times of "this used to work, I don't know why it's working now and I don't know what I did to break it". Source Control tracks all revisions of that and you can usually easily roll back certain pieces using it. It's just good practice.
The discussion here is pretty good: http://programmers.stackexchange.com/questions/122150/how-can-i-convince-cowboy-programmers-to-use-source-control
maanse — 2014-06-13T10:23:15-04:00 — #7
yea, its just the whole 'staging', 'commit', 'upload', 'clone'.... i just think for me its far easier to code in notepad++ and press save. - job done. Its just working on multiple machines that makes it annoying. so ive just been copying the 'working folder' to one of my cloud accounts and using that.
As for using SCM for fixing errors i've caused, that is a good idea. However everytime i backup to my cloud i leave a copy of it on the server. So its not too much of an issue.
The problem with this 'git' thing is that its new (to me) and different, so the older known method seems easier. Im sure if i forced myself to use it i would eventually agree with you.... haven't got the time to learn it at the moment tho
mawburn — 2014-06-13T10:33:35-04:00 — #8
You can do all those things in 2 actions.
Just make sure the "Push commits immediately to origin" is selected and you have already linked it to your Bitbucket account. The setup takes a few minutes, but using it is pretty easy.
The .gitignore file is really easy to use as well. It's just a text file and you put in file names with or without wildcards in them for things you want to ignore and they won't show up in the staging area.
Clone is just when you download the most current version of the repository.
In any case, if you're really dead set at just sticking to the basic file management you could use Dropbox or one of the Dropbox alternatives. I've never had a problem with Dropbox though. Google Drive was pretty crappy.
You just install the Dropbox program and save any changes to files to a specific folder. That folder is monitored and picked up and synced across all devices automatically. There are apps for every major device and OS.
maanse — 2014-06-13T11:06:41-04:00 — #9
These are all valid points and i am willing to give it a go. Having a look around the internet now, i think the github for windows interface will be the one im trying.... just looks so much nicer, easier on the eye.
I appreciate the advice.
As for the cloud services, you surprise me by saying that google drive was crappy and that dropbox was ok. I had the exact opposite experience. I couldn't get dropbox to work properly and ditched it after about 6 months in favour of google drive. It would take days to upload small files to dropbox but seconds on drive.... Strange huh?
Anyhow, im done for the weekend now so i will make Git my first job on monday - see if i can convert myself (with your advice)....
Thanks again for the help.
mawburn — 2014-06-13T11:37:39-04:00 — #10
Well, Google Drive was a memory hog for me for some reason. It would even crash at times. I looked online and saw other people having the same issues, so I ditched it.
But this was like 6-8 months ago and it is Google. They tend to not have things broken for long.
sg707 — 2014-06-13T17:55:37-04:00 — #11
Sounds like you're a solo developer. In that case, SCM is not so beneficial other then being a backup. SCM true power is to allow multiple developers to edit same file w/o causing corruption. EasyPHP or other Linux on USB sounds like the best solution for you.
maanse — 2014-06-16T12:20:12-04:00 — #12
Yea i am a solo (amateur) developer, but im starting to take on a few more projects to boost my knowledge for the possibility of a future job. So from that point of view i suppose im better off learning to deal with SCM now rather than when i get a job. Ive had a play with sourcetree over the last day or so, and its not as complicated as i first thought. Relatively easy actually.