简体   繁体   中英

We aren't getting any feedback from the TF CLC command in Linux when trying to access our TFS 2010 server

I have been working with one of our Linux administrators to get command-line access to our TFS server from our Linux environment, and we aren't being very successful.

When using the TF command to log in, we receive no feedback at all from it, nothing as to whether the login was successful or not, nor are we prompted for a password. We are able to get normal feedback from it if we use the Help command, in which case, we get the help for whichever command we're looking for.

There is nothing in the Event Viewer logs on the TFS server, nor on the Linux machine pertaining to these attempted and (failed?) login attempts. We have confirmed that we can access the TFS web service from the Linux machine, and that the person testing has access to at least one Team Project.

Per the article here: http://msdn.microsoft.com/en-us/library/hh190725(v=vs.100).aspx we should receive a prompt for credentials, or at least a password, if either/both are not specified:

"You will be prompted to specify your credentials if you have not stored them and you try to run a tf command without this option. If you try to run a tf command with this option but you do not specify a password, you will be prompted to specify one."

Current setup:

TFS Server is running Windows Server 2008 R2 with Team Foundation Server 2010

Linux environment is running Red Hat Enterprise Linux Server release 5.8 (Tikanga) with JRE 1.7 and Team Explorer Everywhere CLC 12.0.1 downloaded from http://www.microsoft.com/en-us/download/details.aspx?id=40785

The TEE CLC was installed per instructions in the download page, and we do not use Eclipse. Exact install steps (Which were less than helpful):

To install the Cross-Platform Command-Line Client for Team Foundation Server
1) Unzip the archive (TEE-CLC-12.0.0.zip file) that contains the client.
2) Configure your shell or system path to include the folder to which you unzipped the archive.
3) To verify that the client is working, at a command prompt, type tf, and then press the ENTER key.
If the client is correctly installed, output appears, starting with "Microsoft Team Explorer Everywhere Command-line Client (version 12.0.0)".

We do get the "Microsoft Team Explorer Everywhere Command-line Client (version 12.0.0)" verbiage when we run tf by itself.

Here are the list of commands tried on the Linux machine:

tf -login
tf -login:<username>
tf -login:<username>@<companyurl>.com
tf -login:<username>@<domain>
tf -login: <username>@<domain>
tf -login:<username>@<domain>
tf -login:<username>@<tfsservername>
tf -login:<username>@<tfsservername>.<companyurl>.com
tf -login: <username>@<tfsservername>.<companyurl>.com
tf -login:http://<tfsservername>:8080/tfs/<username>
tf -login: <username>@http://<tfsservername>:8080/tfs
tf -login: <username>@<tfsservername>
tf -login:<username>@<tfsservername>
tf -login:<username>@http://<tfsservername>:8080/tfs
tf -login:<username>@http://<tfsservername>:8080/tfs,<password>
tf -login:<username>@<tfsservername>
tf -login|<username>@<tfsservername>
tf -login|<username>@<domain>
tf -login:<username>@<domain>,<password>
tf -login:<username>@<domain>,
tf -login:<username>@<companyurl>
tf -login:<username>@<domain>
tf -login:<username>@<domain>,<password>
tf -login:<username>@<domain>,
tf -login:<username>@<domain>,
tf -login:
tf -login:<domain>\<username>,<password>
tf -login:<domain>\<username>,<password>
tf -login:<username>@<domain>
tf -login:<username>@<domain>
tf -login:<username>
tf -login:<domain>\<username>
tf -login:http://<tfsservername>:8080/tfs\<username>
tf -login:<domain>\<username> -server:http://<tfsservername>:8080/tfs
tf -login:<domain>\<username> -server:http://<tfsservername>/tfs
tf -login:<username>@<domain> -server:http://<tfsservername>/tfs
tf -login:<username>@<domain> -server:http://<tfsservername>/tfs
tf -login:<username>@<domain>,<password>
tf -login:<username>@<domain>,
tf -login:<username>@<domain> -server:sudo less /var/log/messages
tf -login:<domain>\<username> -server:http://<tfsservername>:8080/tfs
tf -login:<username>@<domain>  -server:http://<tfsservername>:8080/tfs
tf -login:<username>@<domain>  -server:http://<tfsservername>
tf -login:<username>@<domain>  -server:http://<tfsservername>/tfs
tf -login:<username>@<domain>  -server:http://<tfsservername>/
tf -login:<username>@<domain>  -server:http://<tfsservername>:8080/tfs/
tf -login:<username>@<companyurl>.com  -server:http://<tfsservername>:8080/tfs/
tf -login:<username>@<companyurl>  -server:http://<tfsservername>:8080/tfs/
tf -login:<username>@<domain>  -server:http://<tfsservername>:8080/tfs/

When we try these we get an error (Which is expected, the arguments are wrong):

tf workspaces /collection:http://<servername>:8080/tfs/<collectionname>
An input validation error occurred: The workspace name '/collection:http://<servername>:8080/tfs/<collectionname>' contains invalid characters.  Only valid NTFS characters are permitted.
tf workspaces collection:http://<servername>:8080/tfs/<collectionname>
An input validation error occurred: The workspace name '/collection:http://<servername>:8080/tfs/<collectionname>' contains invalid characters.  Only valid NTFS characters are permitted.

(NOTE: the server and collection names are simple alphanumeric strings, no special characters at all)

When we try the following commands, we get no feedback whatsoever (again):

tf workspaces -collection:http://<servername>:8080/tfs/<collectionname>

tf dir $/<projectname>

tf dir $/<project name> -collection:http://<servername>:8080/tfs/<collectionname>

Per another recommendation, we looked for the ~/Microsoft/Team Foundation/4.0/Logs folder under the user profile, which doesn't exist. In fact, no folder with the case-insensitive word "Foundation" exists anywhere on the Linux machine.

Since we aren't receiving any feedback from the command, we have no idea what the problem could be or where our troubleshooting should take us next.

Logs are not in ~/Microsoft , they're in ~/.microsoft . (Note the dot.)

It's difficult to say what the problem is without the logs: you're not specifying a command in the first examples, as -login is not a command, it's an option. You need to specify the login credentials option along with a command. For example:

tf workspaces -login:... -collection:...

But without the logs, it's difficult to tell what the problem is.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM