Xcode Server can't checkout a specific commit

Originator:penrose
Number:rdar://15154059 Date Originated:04-Oct-2013
Status:Duplicate Resolved:
Product:OS X Server Product Version:2.2.67 (13S411)
Classification:Serious Bug Reproducible:Always
 
Summary:
If you create a Bot for an Xcode project that has git submodules that are checked out at a specified commit, the Xcode Server will not be able to check the project out.

You can see from the log below that it appears to be trying to checkout the string '(detached from 4b79bd9)' instead of the commit SHA.

Oct  4 14:11:31 cylon.local xcsbuildd[7125] <Error>: [XCSCheckoutOperation.m:518 78ee4310 +138ms] Error in Git checkout Error Domain=CSBotSCMAction Code=-1000 "error: pathspec '(detached from 4b79bd9)' did not match any file(s) known to git.
	" UserInfo=0x7f9d52465a50 {NSLocalizedDescription=error: pathspec '(detached from 4b79bd9)' did not match any file(s) known to git.
	} <stderr>= error: pathspec '(detached from 4b79bd9)' did not match any file(s) known to git.
	
	
	
	SSH Known Hosts file path is located at /Library/Server/Xcode/Config/ssh_known_hosts
	SSH strict host checking is disabled (you can enable this by editing the SSHStrictHostKeyChecking key in /Library/Server/Xcode/Config/xcsbuildd.plist
	Untrusted HTTPS certificates is enabled (you can disable this by editing the TrustSelfSignedSSLCertificates key in /Library/Server/Xcode/Config/xcsbuildd.plist
Oct  4 14:11:31 cylon.local xcsbuildd[7125] <Error>: [XCSOperation.m:33 78ee4310 +0ms] Error Domain=CSBotSCMAction Code=-1000 "error: pathspec '(detached from 4b79bd9)' did not match any file(s) known to git.
	" UserInfo=0x7f9d52465a50 {NSLocalizedDescription=error: pathspec '(detached from 4b79bd9)' did not match any file(s) known to git.
	}
Oct  4 14:11:31 cylon.local xcsbuildd[7125] <Debug>: [XCSOperation.m:28 78ee4310 +0ms] Cancelling operation: XCSCheckoutOperation
Oct  4 14:11:31 cylon.local xcsbuildd[7125] <Error>: [XCSBuildBundle.m:680 78ee4310 +0ms] Got an error from the checkout operation: Error Domain=CSBotSCMAction Code=-1000 "error: pathspec '(detached from 4b79bd9)' did not match any file(s) known to git.
	" UserInfo=0x7f9d52465a50 {NSLocalizedDescription=error: pathspec '(detached from 4b79bd9)' did not match any file(s) known to git.
	}

Steps to Reproduce:
1. Create an Xcode Project and make several git commits.
2. On the command line in project folder, check out an old commit that is not attached to the head of any branches.
2a. or you can also add a submodule like RestKit (https://github.com/RestKit/RestKit) which has its own submodules checked out at specific commits.
3. In Xcode, under the Source Control menu item, make sure the working copy says (detached from xxxxxxx). xxxxxxx = commit SHA
4. Create a Bot for project and see if it integrates successfully.

Expected Results:
The bot should integrate successfully.

Actual Results:
The bot fails to integrate.

Version:
Version 2.2.67 (13S411)

Notes:


Configuration:
MacBook Pro 
15-inch, Early 2011
Processor  2.2 GHz Intel Core i7
Memory  8 GB 1333 MHz DDR3
Graphics  Intel HD Graphics 3000 512 MB
Software  OS X 10.9 (13A598)

Attachments:
'ServerLogs-cylon-131004-141711.tgz' was successfully uploaded.

Comments

Duplicate of rdar://14753644


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!