我有一个文件,我将其拉入并推送到 svn 存储库。我需要在从存储库中提取文件时删除一个文件的一部分,并在推送到存储库时添加相同的部分。这将由 'git svn fetch' 和 'git svn dcommit' 完成相关问题:如何设置 gitattributes 来过滤文件的一部分?
我需要一个 sed 或 awk 脚本来删除和添加这个:
GlobalSection(SubversionScc) = preSolution
Svn-Managed = True
Manager = AnkhSVN - Subversion Support for Visual Studio
EndGlobalSection
由此:
Global
GlobalSection(SubversionScc) = preSolution
Svn-Managed = True
Manager = AnkhSVN - Subversion Support for Visual Studio
EndGlobalSection
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|Mixed Platforms = Debug|Mixed Platforms
Debug|x86 = Debug|x86
Release|Any CPU = Release|Any CPU
Release|Mixed Platforms = Release|Mixed Platforms
Release|x86 = Release|x86
EndGlobalSection
EndGlobal
编辑:使用 awk 我可以这样做来获取文件的特定部分
awk -v RS='GlobalSection' '/SubversionScc/ {print RS$0 RS} ' file
我如何恢复它以获取除这部分之外的所有其他内容?之后我如何添加这部分
Global
或之前
EndGlobal
在原始文件中?