svn 添加 .a静态库

来源:互联网 发布:红蜘蛛控屏软件 编辑:程序博客网 时间:2024/05/02 14:45
在mac下很多svn管理工具默认都不能上传.a文件,这让人很苦恼。从网上扒了下,用命令行可以解决此问题。

打开终端,cd 进入到需要上传的.a文件所在的文件夹。 确保 ls能看到.a文件

然后使用命令,如:svn add libzbar.a

使用完成后出现
             A  (bin)  libzbar.a

表示添加成功,用svn图形管理工具就可以看到,刚才添加的.a文件,此时就可以手动上传了。









Mac OS X快速显示、恢复隐藏文件的方法
在Mac OS X中,文件名前有一个点“.”就可以隐藏文件。你以前可能注意过这点,例如,当你将文件从mac复制到PC中,可以看到.DS_Store文件,但在pc中它不是隐藏的。
这些文件默认是隐藏的,这样做有很多好处,普通用户几乎没有修改他们的需要,同时让这些文件保持可见会让文件夹变得杂乱无章。但是,偶尔你会发现自己需要查看这些隐藏文件。例如,浏览UNIX文件系统、处理.htaccess文件或者找到自己用“.”开头命名隐藏的文件。
使用终端
显示隐藏文件的最简单方法是使用终端。只要打开终端(位于应用程序——实用工具),将以下代码复制进去然后回车
defaults write com.apple.finder AppleShowAllFiles -bool YES
Finder需要重启才能应用修改,在终端中接着输入
killall Finder
并回车
恢复隐藏不可见,在终端中输入以下代码并回车
defaults write com.apple.finder AppleShowAllFiles -bool NO
同样Finder需要重启
killall Finder
这种方法很简单,但是比较麻烦。
在打开和保存对话框中
在打开和保存对话框中,有一个方便的键盘快捷键来切换隐藏文件的可见度。在活动对话框中按Command+Shift+.(点)就可以显示隐藏文件,再按一次恢复。
设置键盘快捷键
尽管apple在打开、保存对话框中设置了那个方便的快捷键,但是在普通的finder窗口中却没有。幸运的是,我们可以很轻松的自己设置一个快捷键。
打开Automator(应用程序文件夹中)并选择服务。在资源库中选中“Run Shell Script”并将它拖到右边的工作区中。将以下代码复制到文本框中。
STATUS=`defaults read com.apple.finder AppleShowAllFiles`
if [ $STATUS == YES ];
then
defaults write com.apple.finder AppleShowAllFiles NO
else
defaults write com.apple.finder AppleShowAllFiles YES
fi
killall Finder
最后在上边的Service receives的下拉菜单中选择“no input”,然后将工作流程保存为“Toggle Hidden Files”。
现在,如果你打开Finder——服务菜单,你会看到刚才制作的“Toggle Hidden Files”选项。现在添加键盘快捷键,打开系统偏好设置——键盘,点击快捷键选项卡。在左边选择服务,然后勾上“Toggle Hidden Files”,在它的右边双击鼠标,然后按下你想要设定成为的快捷键。我使用的是Command+Shift+.(点)。

设置一个右键菜单项
与以上设置快捷键中使用Automator的过程相同,唯一的区别在于,上边提到的那个Service receives,这次选中“文件和文件夹”,并在右边选中Finder。保存。现在,当你在finder中弹出右键菜单时,就会看到“Toggle Hidden Files”选项咯。






svn ci 时出现 xx is already under version control,然后无法提交,出现这个问题的原因是你所提交的文件或目录是其他SVN的东西,即下面有.svn的目录,需要先把它们删除才能提交,具体操作如下:

打开terminal,cd到你新增加的那个目录,然后用下面的命令

#find . -mindepth 2 -name '.svn' -exec rm -rf '{}' \;

这个命令会递归的删除目录下所有.svn的文件夹,现在,再提交一次试试?

 


.svn 直接删除也可以






问题1:’.’ is not a working copy. Can’t open file ‘.svn\entries’: 系统找不到指定的路径。

解答:原因是输入的访问路径不正确,如svn://192.168.6.200/如果最后少写了“/”,就会出现这种错误提示。


问题2:将文件checkout之后,没有出现SVN的图标 ,是怎么回事?

解答:有些时候在客户端Checkout文件后,SVN的系统图标也会不显示,可以执行一下“Clean up”,就会出现SVN的系统图标。


问题3:为什么添加的文件,别人看不到,版本库里也没有 ?

解答:最可能的原因是,你只是执行了“Add”而没有“Commit”,这样只是在本地注明某个文件是预定要增加的,而没有实际添加到版本库中,要添加到版本库必须执行“Commit”。删除文件也是一样。


问题4:“Commit failed。……You have to update your working copy first” 提交失败,需要首先执行更新操作。

解答:多人同时修改同一文件,在提交前其他人已经抢先提交到SVN服务器中,导致该错误;解决方法:对工作复本中的文件进行更新即可。


问题5:更新时提示文件发生冲突:“One or more files are not a conflicted state。”

解答:多人同时修改同一文件的同一部分,SVN无法自动进行合并,会导致该错误;解决方法:对工作复本中的文件和服务器的文件进行比较,手工合并即可。


问题6:“Commit failed;File already exists”提交失败,文件**已存在。

解 答:版本管理系统在改变你的计算机上的工作副本时,是非常的小心的。在做任何事情之前,它都尽可能把您的意图写到你的计算机上的日志文件中去。但如果偶然 地操作中断了(例如:突然停电了,您的计算机死机了),那么日志文件记录就可能同您最后的工作状态不一致。一种建议解决途径:先把要提交的东西拷出来放到 其它目录,再更新本地文件,然后把拷出来的文件重新放回去提交。


问题7:Working copy’**’locked. Please execute the ’Clean up’command.

解答:Subversion客户端在提交内容之前会在本地的工作拷贝写日志,防止其他客户端再次作操作,如果这个提交过程中发生错误,就会存在未清理的日志,解决这个问题之需要执行“清理”操作,整理你的计算机上的工作副本,清理错误的日志记录,使您可以继续操作。


问题8:执行clean up时,出现错误“Subversion reported an error while doing a cleanup!” '**' is not a working copy directory ”

解答:遇到这种情况,先删除隐藏文件夹.svn中的tmp下面的临时文件,再执行clean up。


问题9:因为仓库与目录很多,使用TSVN每次选择目录URL of repository有很多地址,如何才清除 呢?像清除浏览器中的历史那样,用什么方法呢?

解答:右键->TortoiseSVN->Settings->Saved Data,就可以清除你想要的东西了,包括URL、log、窗口大小、密码缓存等。


问题10:在SVN中选中一个目录show log时,出现了某些版本只显示版本号和(no date),没有其他信息 ,什么原因引起的?

解答:出现了(no date)的revision,为其他人修改了你所没有权限访问的某个目录下的文件。

问题11:Attempted to lock an already-locked dir is not under version control

I deleted the log file in the .svn directory (I also deleted the offending file in .svn/props-base)
Then did a cleanup.. Then resumed my update.

问题12:svn: warning: 'xxxxx' is already under version control 解决办法?

只添加相应目录到SVN,但不添加目录下的文件:
#svn st uploads|grep ^?|awk "{print \$2}"|xargs svn add -N
原因: 很可能是 .svn 隐藏目录版本信息被修改了
解决办法:
删除uploads目录下的.svn目录及下面的文件(保留uploads目录的.svn)
#find uploads |grep 'uploads/[^\.]*/.svn'|xargs rm -rf

 

 

 

 Attempted to lock an already-locked dir is not under version control
I deleted the log file in the .svn directory (I also deleted the offending file in .svn/props-base)
Then did a cleanup..
Then resumed my update.

 

 

问题1:’.’ is not a working copy. Can’t open file ‘.svn\entries’:系统找不到指定的路径。

解答:原因是输入的访问路径不正确,如svn://192.168.6.200/如果最后少写了“/”,就会出现这种错误提示。


问题2:将文件checkout之后,没有出现SVN的图标,是怎么回事?

解答:有些时候在客户端Checkout文件后,SVN的系统图标也会不显示,可以执行一下“Clean up”,就会出现SVN的系统图标。


问题3:为什么添加的文件,别人看不到,版本库里也没有?

解答:最可能的原因是,你只是执行了“Add”而没有“Commit”,这样只是在本地注明某个文件是预定要增加的,而没有实际添加到版本库中,要添加到版本库必须执行“Commit”。删除文件也是一样。


问题4:“Commit failed。……You have to update your working copy first”提交失败,需要首先执行更新操作。

解答:多人同时修改同一文件,在提交前其他人已经抢先提交到SVN服务器中,导致该错误;解决方法:对工作复本中的文件进行更新即可。


问题5:更新时提示文件发生冲突:“One or more files are not a conflicted state。”

解答:多人同时修改同一文件的同一部分,SVN无法自动进行合并,会导致该错误;解决方法:对工作复本中的文件和服务器的文件进行比较,手工合并即可。


问题6:“Commit failed;File already exists”提交失败,文件**已存在。

解答:版本管理系统在改变你的计算机上的工作副本时,是非常的小心的。在做任何事情之前,它都尽可能把您的意图写到你的计算机上的日志文件中去。但如果偶然地操作中断了(例如:突然停电了,您的计算机死机了),那么日志文件记录就可能同您最后的工作状态不一致。一种建议解决途径:先把要提交的东西拷出来放到其它目录,再更新本地文件,然后把拷出来的文件重新放回去提交。


问题7:Working copy’**’locked. Please execute the ’Clean up’command.

解答:Subversion客户端在提交内容之前会在本地的工作拷贝写日志,防止其他客户端再次作操作,如果这个提交过程中发生错误,就会存在未清理的日志,解决这个问题之需要执行“清理”操作,整理你的计算机上的工作副本,清理错误的日志记录,使您可以继续操作。


问题8:执行clean up时,出现错误“Subversion reported an error while doing a cleanup!” '**' is not a working copy directory ”

解答:遇到这种情况,先删除隐藏文件夹.svn中的tmp下面的临时文件,再执行clean up。


问题9:因为仓库与目录很多,使用TSVN每次选择目录URL of repository有很多地址,如何才清除呢?像清除浏览器中的历史那样,用什么方法呢?

解答:右键->TortoiseSVN->Settings->Saved Data,就可以清除你想要的东西了,包括URL、log、窗口大小、密码缓存等。


问题10:在SVN中选中一个目录show log时,出现了某些版本只显示版本号和(no date),没有其他信息,什么原因引起的?

解答:出现了(no date)的revision,为其他人修改了你所没有权限访问的某个目录下的文件。



原创粉丝点击