开发者

svn status doesnt show me the list of modified files

I checkedout some files insi开发者_Go百科de dir using:

svn co  <dir>

After that I used following command to replace some text in all java files inside this dir:

find . -type f -print0 | xargs -0 sed -i "s/old/new/g"

Now, I fired this command:

svn status 

It doesn't show the list of changed files. I can see the replacement in all java files but couldn't see the list of those files in svn status command.

Please help . Even svn commit not working.


At a guess, your command will have also went through the files hidden inside the .svn directories. Potentially corrupting lots of things. Especially if your repository name had the text "old" in it. SVN will not like this!

What it will have definitely done is changed the "base" files inside .svn/text-base. So that as far as SVN is concerned nothing has changed (it compares the current directory to copies of the files in .svn to see what has changed).

Or, could be something else entirely.


The given find command is definitely wrong, cause you didn't prevent find from going into .svn folder which is wrong.

This results in creating a new checkout from scratch. 

The following is comming close to what you need:

find . -type f -not -path "*\.svn*" -and -not -path "*/target*" -and -not -path "*/\.settings*" -name "*.java"

I would recommend to do this kind of things via IDE (Eclipse etc.)

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜