Source Code Control

There are two general approaches to source code control: developer-centric and server-centric.  In the developer-centric approach advocated by Iron Speed Designer, developers have a local copy of the application and the source code and run the application on their local machines.  In the server-centric approach, all developers "deploy" to the same server.

Most developers using Iron Speed Designer also use source code control systems to coordinate development between multiple developers working on a project so they do not destroy each other’s work by accidentally overwriting it.  While Iron Speed Designer does not directly integrate with any particular source code control system, such as PVCS or Microsoft Visual SourceSafe, you can use a source code control system to check-in and check out source files generated by Iron Speed Designer.

Which files are source code files?

Iron Speed Designer considers several types of files to be source code files:

We recommend you place the following files under source code control:

...\<App Folder>\*.html  (all files, all sub-folders, recursive)

...\<App Folder>\*.xml  (all files, all sub-folders, recursive)

...\<App Folder>\DataAccess\*.*  (all files, all sub-folders, recursive)

...\<App Folder>\BaseClasses\Readme.txt

 

...\<App Folder>\Bin\BaseClasses.en-US.resx

 

...\<App Folder>\AppName.vbproj

...\<App Folder>\AppName.vbproj.webinfo

...\<App Folder>\AppName.vsdisco

...\<App Folder>\AssemblyInfo.vb

...\<App Folder>\CompileApplication.bat

...\<App Folder>\CompileApplication.rsp

...\<App Folder>\default.aspx

...\<App Folder>\ExportFieldValue.aspx

...\<App Folder>\ExportFieldValue.aspx.vb

...\<App Folder>\Global.asax

...\<App Folder>\Global.asax.resx

...\<App Folder>\Global.asax.vb

...\<App Folder>\ApplicationWebForm.js

...\<App Folder>\ApplicationWebUIValidation.js

 

...\<App Folder>\Shared\FvLlsHyperLink.safe.vb

...\<App Folder>\Shared\FvDsHyperLink.safe.vb

 

...\<App Folder>\Shared\ConfigureAddRecord.aspx

...\<App Folder>\Shared\ConfigureEditRecord.aspx

...\<App Folder>\Shared\ConfigureSpecialEditRecord.aspx

...\<App Folder>\Shared\ConfigureSpecialViewRecord.aspx

...\<App Folder>\Shared\ConfigureViewRecord.aspx

...\<App Folder>\Shared\BaseApplicationPage.aspx.vb

...\<App Folder>\Shared\Default.aspx

...\<App Folder>\Shared\Forbidden.aspx

...\<App Folder>\Shared\Internal_Server_Error.html

...\<App Folder>\Shared\Show_Error.aspx

Any *.aspx.cs or *.cs files that have been customized

Any *.aspx.vb or *.vb files that have been customized

Note: For C# applications, replace all occurrences of ".vb" with ".cs".

Working with Source Code Control Systems

When Iron Speed Designer encounters a read-only file that it needs to generate, it will reset the read-only flag and continue the generation in order to make sure that the code produced can be compiled.  The best way to work with Visual SourceSafe or similar source code control tools is as follows:

  1. Check-in the HTML layout pages and XML component definition files for your pages.  Since the C# and Visual Basic .NET code files and the ASPX / ASCX page files are generated by Iron Speed Designer, you do not need to check them into your source control system unless you modified any of the C# or Visual Basic .NET code files.  If you did modify them, only check-in the ones you have modified.

  2. Check-in the XML files in the Data Access Layer folder.  These files contain the database schema information used by Iron Speed Designer to generate your application’s data access layer.  You do not need to check in any of the associated C# or Visual Basic .NET code files.

  3. Check-in your application’s project-related files, if any, such as AppInfo.xml, MyApp.config, MyApp.vbproj (MyApp.csproj) and MyApp.sln.

  4. If you modify your database schema, we suggest you check out the entire project before scanning and accepting the changes in Iron Speed Designer.  This is because a change in one field of one table may have caused changes on many pages.  At a minimum, check-out the Data Access Layer XML files when scanning your database for changes and accepting the changes.  If database table fields are deleted or modified significantly, accepting changes may impact some pages, so you may want to check-out all HTML layout pages and XML component definition files for the pages as well.

  5. If you modified the database properties of a table, view or query, check out the XML component definition file for that table, view or query.

  6. Check-out the HTML layout page files and the XML component definition files when you are working on them individually.

  7. If you are modifying a page, check out all of the files related to the page including the .ASPX, .VB / .CS, .HTML, .XML and .Controls.vb / .cs files.  Note that the .Controls.vb / .cs files may be in the App_Code folder when using .NET Framework 2.0 / 3.0.

If you follow these simple guidelines, then you will not have any problems using a source code control system such as Visual Source Safe, Microsoft Team Foundation Server, and Rational ClearCase.

See Also

Working with Microsoft Visual Studio .NET