How to set up SVN for subversioning - c#

I have a VPS server with Windows 7, on that server I have placed my Asp.net c# web application. Now how would I do the set up with SVN so that I can check in and check out code from my personal computer?.
NOTE : this is Tortoise SVN
Thank you

The easy way is to install VisualSVNServer on the machine that you're using as the server, then TortoiseSVN on the one that you're using for the developer workstations.
After you install VisualSVNServer, create a repository and it'll show you the URL to the repository, that you can then plug into Tortoise on the dev workstation.
Then add your C# code to the repository using Tortoise, and you're all set.

The best thing to do is to read the Subversion book, as you'll need to have a better understanding of subversion to run a server. It's not terribly difficult, a lot depends on whether you need access to the repository from other computers. If not, you set up a local file based repository without using a server at all. Again, this is all well covered in book.

Related

Execute application on shared folder using resource of shared machine

I write small apps to help automate daily work of some colleagues and want to put on a shared folder on my machine so that others from local network can execute when my computer is on. I don't have the luxury of my own server so this is the best I can do.
One of which is a Winform app that connects to an Oracle database via an Oracle client and Oracle Data Access installed on MY machine to retrieve information. I would hope that people can execute the app (.exe file) when my machine is on, without installing anything on their machine. The app will write to an output file (.html) on the same folder and open it on THEIR browser.
My question is : What should I do to make it possible ? How can people run this .exe file using Oracle Client, Oracle DataAccess and .Net framework already installed on MY machine as if I am running it locally.
I mark all C# Assemblies (automatically added by Visual Studio) as Copy Local to True (Microsoft.CSharp.dll, System.Data.dll, System.dll, System.Data.DataSetExtensions.dll, System.Deployment.dll, System.Drawing.dll, System.Net.Http.dll, System.Windows.Forms.dll, System.Xml.dll, System.Xml.Linq.dll). Would people still need .Net framework installed ? My app is quite simple with only one external dll Oracle.DataAccess.dll. How about Oracle client and Oracle Data Access.
Many thanks.
Best solution for your situation is create a webservice and make the clients that'll consume your webservice instead of them making direct calls to your database. It removes system dependencies and easier maintenance.
Your colleagues can go to your computer via remote desktop if it is feasible. In the probable case that this is not feasible, you need to decide what the colleagues will see. If they only need to see the generated html and they only need to trigger the execution of your exe, then you will need to have a program which listens to a port and make sure that the given port is requested correctly by your colleagues via a small client app.
But honestly, the use-case you describe sounds like a website used by your colleagues. You can create a website in .NET, the exe you have would be the controller or code-behind depending on the approach you use and the HTML would be the response. Then the colleagues will just request your page with the port you are listening at.

Setting up MySQL server on C# deployment

I have finished developing the first release of my application which uses MySQL (locally under one license and hosted under another).
Connecting the application to the hosted database works fine, i edit the connection details within my application to the hosted server details and it works fine.
However, when I try and use it locally (server:localhost etc..) i get an error stating it can not access the server. In my application, i have included the mysql DLL files, but I would prefer the user not to have to install MySQL server which is about a 100MB download (i know its quite small these days but want the install to be as pain free as possible).
I know it would be an easy fix just to add this install as a prerequisite, but i am sure there is a way to do it without this, or maybe not. Is there a script i can run which will run through and setup the server with users etc?
Any help is appreciated.
Thanks
Shaun
Connecting to a local mysql database implies there's a mysql database service running and was previously installed.
If you want a database you can distribute with your program without having to install a fully fledged database there are quite a few around such as MSSQLCE.
But otherwise, your user is going to have to install mysql on his own machine and keep it running.
Or you could use SQLLite, which is what i have had the best experience with so far.
It should be easy to refactor your Program to use this, and it takes no user setup to use it.
Hope this helps :)

How do i update an application after pusblishing it in visual studio

I published an application,when publishing it i checked that the application should check for updates-now how do i make it realy check for updates-where should i put the new files and in which format?
You'll need it on some kind of Web server.
I would imigine that you also want some authentication so that only the application it self can gain access to the new version of the software.
I'm going to assume you mean you are using CLickOnce as the installer. If you want the app to check for updates every time it is ran you need to publish to a location all the apps can see. If this is an internal app I believe a network share will do. If not then you need to publish to a web server or ftp server.
You can use ClickOnce as nportelli mentioned above, or you can use a 3rd party utility to do the heavy lifting for you.
I wrote an open-source library to do just that transparently - including an external update application to do the actual cold update. See http://www.code972.com/blog/2010/08/nappupdate-application-auto-update-framework-for-dotnet/
The code is at http://github.com/synhershko/NAppUpdate (Licensed under the Apache 2.0 license)

Connect to SVN from Windows Mobile

I have been trying to find a framework for windows mobile and .Net Compact to connect to an SVN Repository but i havnt been able to find 1.
Is there an SVN Framework out there for .NET Compact?
If there isnt a framework, whats the best way to attempt to connect to an SVN Repository? At the moment im looking to get the revision history.
If your just looking for revision history, you could setup a Apache server to do the SVN calls remotely and return it to Windows Mobile in some other readable format, such as XML.
The otherway would be to find a WebDAV library that works with .Net Compact to make calls to an Apache setup with WebDAV.
It would be some work to set up on your machine, but you could check whether Trac's timeline works on your mobile client. In addition to the revision history, you can browse through the actual code and view diffs.
Trac is fully customizable to you can in theory create a template that is tailored to your mobile client, but in my experience it's not entirely trivial to do.

Development environment for ASP.NET with EpiServer

At our company we are going to develop more for the Windows platform than we have done up until now. As this scale of Windows development is new to us it would be nice with some feedback from experienced developers.
Requirements we have:
5 developers from the beginning.
15 developers a year from now.
All developers should be able to develop at the same time.
Be able to develop solution for ASP.NET and EpiServer 5.
Our idea:
A shared server which developers use for development through Terminal Services.
SQL Server Express.
Start with some free express edition of Visual Studio, upgrade to a commercial version if we need the additional features.
Use IIS and not the web server built into Visual Studio.
Questions:
Are we on the right track?
In terms of license costs the above should be cheapest, right?
What do you think about multiple developers doing development using a shared TS-server?
Do you know of any company which has a similar development environment?
Are we going to miss some features of the full Visual Studio version immediately? Is using Express version a bad choice?
Is IIS the best choice? If use IIS the developers may use the same port for deployment. If we use the built in web server each one has to set their own port as we're sharing a machine.
Comment answer:
We are thinking about a shared server as it will most likely decrease the license costs. So it's purely a cost issue. We are using CVS for version control. Our situation is that we develop on Mac and Linux, that's why buying 1 server license + Visual Studio licenses seems to be a cost effective way of starting this type of development.
Since you are referring to EPiServer my recommendation is to use Visual Studio's built in web server on each developer's PC. Then get some kind of Windows Server and run SQL Server and IIS on it. Also use some kind of DNS service that allows you to create sub domain host names that you use to run multiple port 80 sites on the IIS.
I don't know the exact terms but you might be able to run SQL Developer Edition in this scenario instead of Express. Then you get the full set of management tools, no size limit on databases and support to import and export data. If you got customers with both 2005 and 2008 SQL Servers you should run both versions as two different instances so that you can move, create and restore database backups easily between environments.
Developers all connect to the same database while developing and when appropriate deploy their projects to the server's IIS web site. If you like you can allow a customer to use it as test site.
I would put the free VisualSVN Server on the server too and use that instead of CVS.
I would also look into renting this as a virtual server somewhere and use some kind of VPN to access it.
If you can live with the limitations I don't see any problems using VS Express.
Good luck!
I second Numenor's comment -- go with a free source control like Subversion. I would be scared to develop on Terminal Services for the simple reason that Visual Studio can be a resource hog if you start doing any debugging. I'm assuming you're going to have more than one person on the project at a time, and I'd think you could get desktops that would work out better for a lower price than a large server that could accommodate those types of terminal server sessions.
On top of that, if you have multiple people working on a project on the same physical box, you're going to have problems with two people changing one file...back to the source control recommendation.
Andrew Siemer has some great articles outlining how to set up a development environment. Interestingly enough, they're in his series-in-progress about setting up a StackOverflow type of site. Start with this one, then follow the series to get the scoop on automated builds.
Edit: You probably don't want to use CodePlex as Andrew outlines, but a private Subversion server would work the same way with TortoiseSVN. You can get Subversion from CollabNet.

Categories

Resources