git update-index not delete lock file when using different worktree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a [issue from
TortoiseGit](https://code.google.com/p/tortoisegit/issues/detail?id=2233).
After doing some test, I report it here.
The following is the testing information I have tested.

### Folder Structure
```
Test
  |-- myrepo
  |     |-- bar.txt
  |     |-- foo.txt
  |
  |-- myrepo.git
        |-- .git
```
Testing repository is
[here](https://code.google.com/p/tortoisegit/issues/detail?id=2233#c2).

### Using different worktree
Set the config file (in the .git folder)
```
[core]
	worktree = ../../myrepo
```

### Test 1 - Git Bash
```
User@PC /d/Repo/myrepo.git (master)
$ git --version
git version 1.9.4.msysgit.0

User@PC /d/Repo/myrepo.git (master)
$ git update-index --refresh
fatal: Unable to write new index file
```
D:\Repo\myrepo.git\\**index.lock** is not deleted.

### Test 2 - Git 2.0.0
Copy testing repository into ```C:\msysgit\MyTest```

Execute```msys.bat```
```$ vagrant up```
```$ vagrant ssh```
```vagrant@precise64:/vagrant/git$ cd /vagrant```
```vagrant@precise64:/vagrant$ cd mytest/myrepo.git```
```
vagrant@precise64:/vagrant/mytest/myrepo.git$ git --version
git version 2.0.0
```
```
vagrant@precise64:/vagrant/mytest/myrepo.git$ git update-index --refresh
fatal: Unable to write new index file
```
Also, **index.lock is not deleted.**

### Test 3 - gitdll of TortoiseGit 
(git version 1.9.0)
Tracing the source code into **compat/mingw.c**
line 289 : xutftowcs_canonical_path() get the value of var. wpathname
```
D:\Repo\myrepo\.git\index.lock
```
It should be
```
D:\Repo\myrepo.git\.git\index.lock
```

line 294 : _wunlink() try to delete the
file.(```D:\Repo\myrepo\.git\index.lock```)
line 295 : GetLastError() return 3(ERROR_PATH_NOT_FOUND)
(Actually, there is no ```D:\Repo\myrepo\.git``` folder.)





--
View this message in context: http://git.661346.n2.nabble.com/git-update-index-not-delete-lock-file-when-using-different-worktree-tp7615300.html
Sent from the git mailing list archive at Nabble.com.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]