Используя jest с узлом, я хочу проверить, не конфликтовал ли один из моих файлов с разрешением GIT. Я сделал код, который работает на моей машине:
const cmd = `find . -not \\( -path ./node_modules -prune \\) -not \\( -path ./.next -prune \\) -not \\( -path ./.git -prune \\) -type f -print0 | xargs -0 grep -li "<<<< HEAD"`
describe('Git conflicts', () => {
test('All conflicts should be resolved', () => {
const result = require('child_process')
.execSync(cmd)
.toString('utf8')
expect(result).toBe('./server/__tests__/check-git-conflicts.test.js\n')
})
})
Однако, как я уже сказал, он работает на моей машине ... Но он не работает в разных средах, потому что я выполняю непосредственно UNIX команда.
Для того, чтобы сделать его более надежным. Я хочу изменить эту команду:
find . -not \\( -path ./node_modules -prune \\) -not \\( -path ./.next -prune \\) -not \\( -path ./.git -prune \\) -type f -print0 | xargs -0 grep -li "<<<< HEAD
Чтобы записать ее просто в коде node.js
, чтобы она была более совместимой со средами. Я пытался использовать fs.readFile
, но у меня не получилось ...
Кто-нибудь знает эффективный способ Node.js для поиска текста во многих файлах?