I work for a shop that has standardized on TFS. We have one project that was developed by a subcontractor in php. You can't even load this thing in Visual Studio.
I managed to create a repo for the project, but I need to find out how to check the project in. Is there some other app (like tortoiseSVN) that I can use to check stuff in and out without Visual Studio? Or is there some way to get VS to load the project and check it in and out without creating a .sln, .csproj, or any other unwanted files?
Actually, it's totally possible to use Visual Studio to do this.
You can use the web interface to create a repo...
You can't edit the php in Visual Studio of course, but you can open the Source Control Explorer to check the project into the repo.
You need to remember to go in Visual Studio to check files out before you edit them, and then check them back in when you're done.
It's clunky, but not as clunky as buying a $200 per year setup we're only going to use a few days out of the year. We're a Microsoft shop after all.
I'm assuming you're using TFVC and not Git for version control.
If you don't have Visual Studio at all, you can install Team Explorer. If you already have Visual Studio installed, that's fine too.
The tool you're looking for is tf.exe -- it's the command line tool for interacting with TFVC.
You can also consider using a Git repo instead of TFVC for this -- although TFVC can be used for any type of source code, it has a reputation of being exclusively for Visual Studio-based projects. Git is likely to be more familiar to folks who have never worked with TFS or TFVC and have not spent much time using Visual Studio.
You can use PhpStorm, then install the TFS Integrartion plugin for it, then you can manage the php projects in PhpStorm same as manage projects in VS.
Just follow the steps mentioned in below screenshot to configure the PhpStorm:
More information you can refer to Using TFS Integration.
Related
I am begining a project in PHP that needs a framework. I've looked in vain for how to install either Symfony or Zend plugin for Eclipse, my IDE.
Any useful links or indications, please ?
http://symfony.dubture.com/installation/
But the best support Symfony in PhpStorm, look at the gifs: http://plugins.jetbrains.com/plugin/7219?pr=phpStorm
I also use PHP Storm at work but I'm just too cheap to buy it for home, so I use Eclipse with the Symfony plug-in! You can download it from the Eclipse marketplace for free, though it is only for Symfony 2.0, Symfony 2.5 is recognized, there are just a few features missing. I found that it still can be useful for code hinting and many Symfony-related helpers still pop up. It beats no helpers or hinting but it does lack many intuitive and time-saving features found in PHP Storm.
Anyway, here's the link directly from the Eclipse plug-in page: http://marketplace.eclipse.org/content/symfony-plugin
If you have Eclipse open, you can even just drag and drop the "Install" icon directly onto Eclipse and it should install automatically. Best of luck to you, #sk001!
I've found a solution.
Either for Zend or Symfony, to use it in eclipse PDT, you need first to download it from the official web site (zend's latest download page, Symfony's download page). Then, add the library to eclipse (Window -> Preferences -> PHP -> PHP Libraries and then new, navigate to the downloaded directory). Finally, after creating the project, right-click on it, Include Path -> Configure Include Path -> Add Library -> Choose User Library then next and select the needed libraries.
For Yii framework, you need to install the Yiiclipse plugin for your eclipse PDT.
I hope it'll help somebody.
I am newbie in using SVN so this is my question.
I don't know how SVN really work but I want make new repository like here this were explained:
http://files.zend.com/help/Mobile/Zend-Studio/Advanced/content/configuring_an_svn_connection.htm
I don't know what should be in URL
I paste there path like:
file://F:/wamp/newSVNProject
newSVNProject - is empty folder where I want to make new SVN project
I was installed SVN in Zend Studio in "welcome page" but I don't know what to do next, how create my own SVN repository with the project? sorry for my english ;-)
I use wamp and I work local
You cannot create your own SVN repository only through the Zend PHP Studio.
What you've installed is the IDE connection to SVN and NOT a SVN server.
You will need to connect to an external (to your IDE/environment) SVN server.
There is a perspective in Eclipse that is used for adding/managing added repositories - it is called "Repository Explorer". You can add a Shortcut to if from the upper right corner of out IDE's window.
If you want to install an Subversion (SVN) Repository you will need to do totally different configurations. The easyest way is to provide the versioned content through a web server - like Apache.
You can read all about it in the Subversion Book.
We are two in a team working on the same project. i am on MAC and the other one is on PC. i have never used SVN before. googling about the SVN gave me basic understanding about svn. and what i understood is there should be subversion installed in client machine (i do not know which client, i assume there are many like versions and cornerstone for mac, tortoise for windows etc. and i require a repository where i will host the centralized version of the application. the client will get the copy of codes or files where they can commit the changes to repository (main application). which can be undone if required. however what i don't understand is, as our PHP code uses database(mysql in my case) how is it managed by SVN client?
lastly i expect my development environment to be implemented the following way.
i want to set up my mac as development server for SVN at the same
time i would like to work in the same machine making use of SVN.
PC should access the repository from MAC and commit the changes.
all the setup should be done and implemented locally via LAN. please correct me if i am wrong on my understanding about the svn and also do guide me about the requirements and resources i need to install in both the machine for me to get going using SVN for my projects.
thank you..
You can use your Mac both for hosting your SVN repository and also use it as the client to checkout your working copy. Have a look at this link (its slightly old but you'll get the gist).
Once you have the SVN repository setup you can enable HTTP access on it so that your partner can checkout the copy and commit changes to it. Have a look here on how to enable HTTP access for your repository.
Most modern day PHP Frameworks use migrations scripts that help in building and maintaining your database schema, if possible use a framework. Have a look at the migrations script of one of the frameworks for inspiration (i.e if you can't use a framework). Migration scripts under the hood fire create table or alter table commands, and all you do is add the migration files to your SVN repository to version control your database schema.
One caveat with hosting the SVN repository on your Mac is that for some reason if its down, your partner gets stuck as code changes can't be committed and new changes can't be checked out. Have a look at this thread for free online private SVN repositories. In case you want to go the paid route GitHub.com is awesome.
I develop on my own and use a repository hosted on http://www.springloops.com. On here I just export the database to a text file and keep historic changes to the database on there. Clearly this is not suitable for a team working together on a project unless you're well coordinated in recording your database changes.
This question looks useful MySQL Version Control - Subversion though it's specific to mysql subversioning - not quite the answer to your broader question.
Each machine should have the relevant Client software, I recommend Tortoise SVN for Windows - it's pretty popular. There is bound to be a similar alternative SVN Client for OSX that you can get your hands on.
I'm trying to create an environment for many users to develop many php projects on.
I've installed Zend server community edition on a Windows 2003 server.
I've shared the apache/htdocs folder.
Each user has a their own folder in htdocs, say:
/htdocs/bob/
/htdocs/sarah/
/htdocs/michael/
...
With the projects they are working on in their folder, say:
/bob/accountingSoftware/
/bob/eCommerceSite/
/bob/newCMS/
...
Within that project folder they will have an svn checkout, say:
/accountingSoftware/trunk/
/accountingSoftware/tag/
/accountingSoftware/branch/
This works well, however svn is now incredibly slow because it's working on a network drive. Can anyone suggest a solution to this?
I'm planning on getting each developer to use Eclipse, and take advantage of the Zend server debugging features. But I'm not clear on how to do this, is my setup appropriate for this?
I'm only testing this setup with a few developers at the moment, so I'd prefer to make any big structural changes/improvements now.
I'd appreciate any comments or suggestions.
Thanks in advance.
I would recommend installing a local Zend server on each developer's computer and have your shared server be running the current trunk code.
This allows each developer to restart the server when they need, and allows them to work locally and not worry about a network drive.
It also allows you to have a shared location where the latest code from everyone can be run without worrying about partially completed changes from each user.
If you try to have all your developers working on a single server, you will always have some number of developers that you cannot support. By having everyone work locally, you can have as many developers as you need.
I currently use Notepad++ for most of my development. I have been checking out other, more full-featured options and would like to switch (I'm in particular a fan of Aptana so far) but there is one thing about Notepad++ that I really like and I haven't been able to get so far.
My current workflow is something like this: Workflow (I tried to embed this image and it showed up in previews but not in the post, sorry)
Workflow http://evanalyze.com/images/workflow.jpg
The process is this:
Download file from web server
Make edits in NP++
Save (this automatically saves a local copy in my default directory, which is also the folder I have setup using Subversion with Tourtise SVN)
When I want to commit a change to SVN, go through the local folder that has an up to date copy
What I can't figure out how to do with Aptana is automatically store a local copy of a file I download from my server, edit and save back to the server. Is there some way to do this? If so, that would solve my problem immediately.
Other options would be a suggestion for a better way to manage the relationship between my server, my editor and my SVN repository. I know Aptana can access my SVN repository too. Is there an easy way to commit changes from within Aptana when I want to (which means I could take Tourtise out of the equation I guess)?
Any suggestions appreciated. Thanks.
I think you're doing things a bit strange.
You already have all your information in an SVN repository, so why not take advantage of that?
You keep a working copy on your computer for development and testing. Save and commit your changes to SVN. On your server, do an SVN export (or checkout, with appropriate server rules to block web access to the .svn folders), and you're sweet!
---------------------- ------------ ---------------
| Local Working Copy | <---> | SVN Repo | <---> | Live server |
---------------------- ------------ ---------------
This means you never have to worry about FTP, or have to figure out which files have been changed locally and hence need to be updated.
Not too sure but I found PhpEd better than Zend for this kind of stuff - especially easy save to FTP.
If you want free general purpose IDE (which supports many languages,as well as Php) - then you should give a try to PsPad www.pspad.com. It can handle ftp very well
If you going to do alot of Php programming - then you have several dedicated (but not free) Php IDEs. PhpEd, PhpEdit, Php Designer, WeBuilder - each one of them have their pros and cons , all of them support ftp .
Eclipse has a plugin called RSE allow you to work on remote sources thru ssh,ftp etc.
You can use PDT but I guess it may work on Aptana as well.
I'm using the Zend Studio For Eclipse which has both SVN and RSE built in.
I'm guessing it's the same in PDT (after installing the RSE plugin), you can either work directly in the RSE perspective or add a remove folder to your project (you can do this only after adding connections in the RSE)
BTW, I found the following link that can give you some more options for remote machine:
http://wiki.eclipse.org/index.php/TM_and_RSE_FAQ#Working_with_TM_.2F_RSE_as_a_User
I currently have Eclipse installed with the Aptana plug-in so I have access to all of the cool features of Aptana.
You can either install Subclipse or Subversive for Eclipse which would effectively take care of needing TortoiseSVN. See: http://subclipse.tigris.org/install.html
Additionally, you can choose between installing and configuring PDT for Eclipse or using the Aptana PHP plugin (I've used both and I don't find that I necessarily prefer one over the other).
Lastly, both Aptana and Eclipse provide ftp and sftp support:
http://www.aptana.com/plugins
http://www.eclipseplugincentral.com/Web_Links-index-req-viewlink-cid-857.html
I found Beyond Compare of Scooter Software to be a great tool for such needs.
Beyond Compare is a very valuable file and directory differ and merger for Windows and Linux which also is able to have one of the directories as ftp-link.
Beyond Compare even has a special plugin for source control systems, which unfortunately does not interact with the server, but is able to understand conflicts, for example.