off by one bug in tf diff /modified output
[tfs.git] / README
blobba0a530ea916e0895cd861dbcb2902907f8b7232
1 Team Foundation is a "collection of collaborative technologies that 
2 support a team effort to deliver a product." It includes bug tracking, 
3 source control, and other features (*).
5 For example, Microsoft's CodePlex site (http://codeplex.com/) 
6 uses a Team Foundation Server for the source control backend.
8 For instructions on how to build and install this software, 
9 see the file INSTALL.
12 Namespaces under Development
13 -----------------------------------------------------------------
15   Microsoft.TeamFoundation
16   Microsoft.TeamFoundation.Common
17   Microsoft.TeamFoundation.Client
18   Microsoft.TeamFoundation.VersionControl.Client 
19   Microsoft.TeamFoundation.VersionControl.Common
20   Microsoft.TeamFoundation.WorkItemTracking.Client
22 The TF tool
23 -----------------------------------------------------------------
25 An in progress implementation of the Team Foundation client, tf.exe,
26 can be found in tools/tf/. If found, it will make use of libmagic 
27 to compute file permissions, as TF servers do not track/store
28 permissions.
30 Documentation on the tool can be found on msdn at:
31 http://msdn2.microsoft.com/en-us/cc31bk2e(VS.80).aspx
33 Supported Commands:
34   add, branches, changeset, checkin, checkout, commit, config, delete,
35         diff, dir, edit, explore, get, help, history, label, labels, lock,
36         ls-files, move, online, permission, properties, rename, shelvesets, 
37         show, status, treeclean, undo, unlabel, version, view, workfold,
38   workspace, and workspaces
40 You can track a repository using the 
41 following commands:
43   tf /server:<server-ip> /login:<domain>\\<username>,<password> workspace /new "<workspace name>;<username>";
44   tf /server:<server-ip> /login:<domain>\\<username>,<password> workfold "$/<project name>" /usr/local/src/somedir
46 Then as often as you like run:
47   tf /server:<server-ip> /login:<domain>\\<username>,<password> /recursive get /usr/local/src/somedir /workspace:someworkspace
50 Running the Unit Tests
51 -----------------------------------------------------------------
53 Most of the unit tests require a working TeamFoundation server. Currently, the unit
54 tests use the following environment variables to configure which server, user account, 
55 password, project, etc. to use for testing purposes.
57 export TFS_URL=<url to server, eg. http://192.168.0.1:8080/>;
58 export TFS_USERNAME=<your-username>; 
59 export TFS_DOMAIN=<your-domain>; 
60 export TFS_PASSWORD=<your-password>; 
61 export TFS_PROJECT=<a top-level project name, eg. MyProject>;
64 TFS Web Services
65 -----------------------------------------------------------------
66 Here's the list of available TFS web services, as noted by
67 a post at http://converttostring.com/archive/2007/03/01/359.aspx
69 /Services/v1.0/AuthorizationService.asmx
70 /Services/v1.0/CommonStructureService.asmx
71 /Services/v1.0/EventService.asmx
72 /Services/v1.0/GroupSecurityService.asmx
73 /Services/v1.0/ProjectMaintenance.asmx
74 /Services/v1.0/ProcessTemplate.asmx
75 /Services/v1.0/Registration.asmx
76 /Services/v1.0/ServerStatus.asmx
78 /Warehouse/v1.0/WarehouseController.asmx
79 /Warehouse/v1.0/WarehouseController.asmx
81 /Build/v1.0/BuildStore.asmx
82 /Build/v1.0/BuildController.asmx
83 /Build/v1.0/Integration.asmx
84 /Build/v1.0/Integration.asmx
85 /Build/v1.0/Integration.asmx
86 /Build/v1.0/PublishTestResultsBuildService.asmx
88 /WorkItemTracking/v1.0/ClientService.asmx
89 /WorkItemTracking/v1.0/ConfigurationSettingsService.asmx
90 /WorkItemTracking/v1.0/Integration.asmx
91 /WorkItemTracking/v1.0/Integration.asmx
92 /WorkItemTracking/v1.0/Integration.asmx
93 /WorkItemTracking/v1.0/Integration.asmx
95 /VersionControl/v1.0/repository.asmx
96 /VersionControl/v1.0/administration.asmx
97 /VersionControl/v1.0/integration.asmx
98 /VersionControl/v1.0/item.asmx
99 /VersionControl/v1.0/upload.asmx
101 /Build/v1.0/PublishTestResultsBuildService.asmx
102 /Build/v1.0/PublishTestResultsBuildService.asmx
105 CodePlex Example Usage
106 ===================================================================
107 For registered developers, CodePlex is a publicly accessible example
108 of a Team Foundation server used to host open source projects. Here's
109 some examples of how to use the TF tool to access CodePlex hosted 
110 source code.
112 In the commands below,
114   UID = your codeplex user name
115   PWD = your codeplex password
116   MACHINENAME = your machine name (or any other random name)
118 Note:   "snd" is the domain name I got with my signon. Not sure
119 if this is the same for everyone or not.
121 First create a workspace:
123   tf /server:https://tfs01.codeplex.com /login:snd\\UID,PWD
124   workspace /new "MACHINENAME;UID"
126 Then map "Turtle" project to a local folder:
128   tf /server:https://tfs01.codeplex.com /login:snd\\UID,PWD
129   workfold "$/Turtle" ~/Source/turtle
131 Then pull the files:
133   tf /server:https://tfs01.codeplex.com /login:snd\\UID,PWD get
134   ~/Source/turtle /recursive
136 Now, to edit the "License.txt" file:
138   cd ~/Source/turtle
139   tf edit License.txt
141 This makes the file writable. To see what you have checked out:
143   tf status
145 To check License.txt back in:
147         tf checkin /comment:"My comment" License.txt
149 This makes the file read-only again. You don't have to specify
150 License.txt. If you don't specify a filename or filenames, it checks
151 in everything you have checked out.
153 Then you could review the history, review a changeset, then look
154 at the diff of the changeset. Note: the examples below assume
155 Credentials.Save is on.
157   cd ~/Source/turtle
158   tf history /recursive .
159   tf changeset 340
160   tf diff C340
163 Code Samples
164 -----------------------------------------------------------------
165 Buck Hodges has written numerous examples of using the TFS API.
166 You can find a list of these samples here:
168 http://blogs.msdn.com/buckh/archive/2006/08/12/tfs_api_links.aspx
170 The following examples have been compiled and tested against
171 TF for Mono:
173 http://blogs.msdn.com/buckh/archive/2005/10/26/485458.aspx
174 http://blogs.msdn.com/buckh/archive/2006/04/06/project_diff.aspx (with 2 changes)
177 Links of Interest
178 -----------------------------------------------------------------
180 http://msdn2.microsoft.com/en-us/library/bb130146(VS.80).aspx
181 http://msdn2.microsoft.com/en-us/teamsystem/default.aspx
182 http://msdn2.microsoft.com/en-us/cc31bk2e(VS.80).aspx
185 Mailing List / Discussion Group
186 -----------------------------------------------------------------
187 http://groups.google.com/group/opentf
189 Members may post messages to: opentf@googlegroups.com