J W
J W

Reputation: 878

git rm file name with space

I tried merging with the command line for a project in Xcode and I think a file needs to be removed. It is a file that exists in the branch I was merging from, but not the branch I was merging into. The problem is it has a space in the name:

TestService/TestService copy-Info.plist

How do I remove that file? thanks!

Upvotes: 32

Views: 34811

Answers (4)

Keith Thompson
Keith Thompson

Reputation: 263217

The same way you'd use rm to remove such a file: quote the name:

git rm "TestService/TestService copy-Info.plist"

or

git rm 'TestService/TestService copy-Info.plist'

or

git rm TestService/TestService\ copy-Info.plist

Depending on your shell and the names of other files, tab completion may help with this. Typing

$ git rm TeTab

will likely complete the directory name:

$ git rm TestingService/

Then typing part of the file name and another tab:

$ git rm TestService/TeTab

will complete the filename, including an inserted \ to escape the space character:

$ git rm TestService/TestService\ copy-Info.plist

But tab completion usually only expands a unique prefix based on all the files available, so this may or may not work.

Upvotes: 58

Adrian
Adrian

Reputation: 21

If you use Ubuntu sometimes you need to use git rm --cached -r "TestService/TestService copy-Info.plist"

Upvotes: 2

Blender
Blender

Reputation: 298106

You can either quote the filename:

git rm "TestService/TestService copy-Info.plist"

Or escape the space:

git rm TestService/TestService\ copy-Info.plist

Upvotes: 5

user1583190
user1583190

Reputation:

Have your tried to add quotes to the filename? "TestService/TestService copy-Info.plist" I'm not 100% sure how it works with Git.

Upvotes: 2

Related Questions