在我的项目中,我想忽略一行代码,因为它包含的目录对于回购程序的每个用户都是不同的。
我已经为我的问题找到了a useful answer,但是我不知道如何将它应用到我自己的问题上。
我需要忽略的行如下:MyMesh.loadMesh("D:/Software Projects/OpenGL/Raytracing-Project/dodgeColorTest.obj", true);
因此,我想知道的是,对于干净和污点的情况,我必须在$ git config filter设置中插入什么。
发布于 2015-06-04 14:40:17
解决问题的标准解决方案是将字符串移动到配置文件中并将该文件添加到.gitignore中。另外,将重命名的文件副本放入存储库,并解释如何使用它。
配置文件的格式和使用方式取决于所使用的语言。
对于C、C++和类似的语言,它可以像包含以下内容的.h文件一样简单:
/**
* This file contains various constants (paths, for example) that are specific
* to the computer where this code is compiled.
*
* Make a copy of this file as 'config.h' and change it to match your system.
*/
#ifndef __CONFIG_H__
#define __CONFIG_H__
/* The path to the OBJ file used by blah-blah-blah feature */
#define OBJ_PATH "D:/Software Projects/OpenGL/Raytracing-Project/dodgeColorTest.obj"
#endif将其命名为config.h.dist (或使用更适合您的项目和编码风格的其他名称),并将其添加到存储库中。
将其复制为config.h,并将config.h添加到.gitignore中。
将#include "config.h"放入您提取上述代码的文件中,并用config.h中定义的符号替换具体的文件路径。
#include "config.h"
MyMesh.loadMesh(OBJ_PATH);使用该技术从代码中提取可能在同事系统上不同的所有值到config.h中。不要忘记将它们添加到config.h.dist中,并提供关于它们的类型和值的相关说明。
https://stackoverflow.com/questions/30645413
复制相似问题