猿问

如何告诉git忽略个别行,即gitignore用于特定代码行

.gitignore 可以忽略整个文件,但是有没有办法在编码时忽略特定的代码行?

我经常重复地在项目中添加相同的调试行,只是要记住在提交之前将其删除。我只想将行保留在代码中,并让git忽略它们。


呼啦一阵风
浏览 666回答 3
3回答

米脂

我在编写Java代码时遇到了类似的问题。我的解决方案是标记不想提交的代码,然后添加一个预提交的钩子来寻找我的标记:#!/bin/bash## This hook will look for code comments marked '//no-commit'#    - case-insensitive#    - dash is optional#    - there may be a space after the //#noCommitCount=$(git diff --no-ext-diff --cached | egrep -i --count "(@No|\/\/\s?no[ -]?)commit")if [ "$noCommitCount" -ne "0" ]; then   echo "WARNING: You are attempting to commit changes which include a 'no-commit'."   echo "Please check the following files:"   git diff --no-ext-diff --cached --name-only -i -G"(@no|\/\/s?no-?)commit" | sed 's/^/   - /'   echo   echo "You can ignore this warning by running the commit command with '--no-verify'"   exit 1fi

幕布斯7119047

这是有趣的。但这基本上就像问题线不存在一样。对于像只是简单地更改一行更改之类的操作,它是行不通的。因此,例如,您不能在函数调用中更改变量的值。例如,您不必确保将其更改flags = foo | bar为flags = foo | bar | debug_thingy,而是必须添加一个像flags |= debug_thingyafter之后的全新行。
随时随地看视频慕课网APP
我要回答