我初始化了一个git存储库,用于添加Oracle Weblogic服务器的本地实例(是!),使用git对其进行版本化。
oracle文件位于c:\ Oracle中。所以我需要将相同的内容添加到git
我发出了以下命令
git init(在c:\中有Oracle目录)
在c:\中添加了一个.gitignore dir并忽略了c:\中除Oracle之外的所有目录
然后运行'git status'来查看状态。正如预期的那样,它显示了以下内容
C:\>git status
# On branch master
#
# Initial commit
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# .gitignore
# Oracle/
nothing added to commit but untracked files present (use "git add" to track)
现在,我做了一个git add * 上面的命令按预期抛出一些详细的输出,显示正在添加的文件并以下面结束(命令输出的尾部显示在下面)
....
base_domain/servers/AdminServer/tmp/.appmergegen_1387484701373_liferay-portal-6.
1.30-ee-ga3-20130812170130063.war/html/VAADIN/themes/runo/tree/tree.css.
The file will have its original line endings in your working directory.
warning: LF will be replaced by CRLF in Oracle/Middleware/user_projects/domains/
base_domain/servers/AdminServer/tmp/.appmergegen_1387484701373_liferay-portal-6.
1.30-ee-ga3-20130812170130063.war/html/VAADIN/themes/runo/window/window.css.
The file will have its original line endings in your working directory.
fatal: unable to stat 'Oracle/Middleware/user_projects/domains/base_domain/serve
rs/AdminServer/tmp/.appmergegen_1387484701373_liferay-portal-6.1.30-ee-ga3-20130
812170130063.war/html/VAADIN/widgetsets/com.vaadin.portal.gwt.PortalDefaultWidge
tSet/043D1FB3F694D0D6D3ACFB33DB80E43D.cache.html': Filename too long
然后我发出了一个git状态以查看是否添加了文件
C:\>git status
# On branch master
#
# Initial commit
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# .gitignore
# Oracle/
nothing added to commit but untracked files present (use "git add" to track)
所以似乎没有添加任何东西。该文件夹对于git来说太大了吗?
每当我使用存储库时,我都尝试过Bazaar及其GUI控件冻结。现在我正在尝试使用Mercurial来查看它是否可以处理它。
答案 0 :(得分:8)
重新映射到此subst X: C:\<__relevant_lengthy_path__>\
-
我遇到类似的遭遇,确认了Max Path length for Windows
的260字符限制我处理的方式是使用SUBST
(替换)命令将任何冗长的文件夹映射到单个字母驱动器,例如subst X: C:\<__relevant_lengthy_path__>\
然而,在你的情况下,很遗憾你只是在C:\
中使用了git,这是不寻常的&amp;勇敢:)
答案 1 :(得分:6)
我严重怀疑你真的需要那个.../tmp/...
目录。出现任何错误时,git add
会失败。如果添加您指定的任何文件时出现问题,则不会添加任何内容。
我建议忽略tmp
目录:
echo tmp >> .gitignore
git add .
这将忽略项目中的所有tmp
目录。如果要忽略特定的tmp
目录,可以指定其完整路径:
echo path/to/AdminServer/tmp >> .gitignore
git add .
由于长文件名位于示例输出中的tmp
目录中,因此忽略git add .
应该有效的目录。
答案 2 :(得分:5)
答案 3 :(得分:4)
问题是特定于Windows的:Git for Windows目前没有使用Win32 API hack将\\?\
添加到路径名以克服260个字符的标准路径名长度限制,并且您的路径名长于9个字符。限制。