feat: add default .gitignore file creation in workspace and collection (#6778)

This commit is contained in:
naman-bruno
2026-01-12 13:26:45 +05:30
committed by GitHub
parent d76a574c51
commit 176646f983
3 changed files with 18 additions and 1 deletions

View File

@@ -25,6 +25,7 @@ const { wsClient } = require('../ipc/network/ws-event-handlers');
const { hasSubDirectories } = require('../utils/filesystem');
const {
DEFAULT_GITIGNORE,
writeFile,
hasBruExtension,
isDirectory,
@@ -160,6 +161,8 @@ const registerRendererEventHandlers = (mainWindow, watcher) => {
throw new Error(`Invalid format: ${format}`);
}
await writeFile(path.join(dirPath, '.gitignore'), DEFAULT_GITIGNORE);
const { size, filesCount } = await getCollectionStats(dirPath);
brunoConfig.size = size;
brunoConfig.filesCount = filesCount;

View File

@@ -5,7 +5,7 @@ const archiver = require('archiver');
const extractZip = require('extract-zip');
const { ipcMain, dialog } = require('electron');
const isDev = require('electron-is-dev');
const { createDirectory, sanitizeName } = require('../utils/filesystem');
const { createDirectory, sanitizeName, writeFile, DEFAULT_GITIGNORE } = require('../utils/filesystem');
const yaml = require('js-yaml');
const LastOpenedWorkspaces = require('../store/last-opened-workspaces');
const { defaultWorkspaceManager } = require('../store/default-workspace');
@@ -86,6 +86,7 @@ const registerWorkspaceIpc = (mainWindow, workspaceWatcher) => {
const workspaceConfig = createWorkspaceConfig(workspaceName);
await writeWorkspaceConfig(dirPath, workspaceConfig);
await writeFile(path.join(dirPath, '.gitignore'), DEFAULT_GITIGNORE);
lastOpenedWorkspaces.add(dirPath);

View File

@@ -5,6 +5,18 @@ const { dialog } = require('electron');
const isValidPathname = require('is-valid-path');
const os = require('os');
const DEFAULT_GITIGNORE = [
'# Secrets',
'.env*',
'',
'# Dependencies',
'node_modules',
'',
'# OS files',
'.DS_Store',
'Thumbs.db'
].join('\n');
const exists = async (p) => {
try {
await fsPromises.access(p);
@@ -456,6 +468,7 @@ const isCollectionRootBruFile = (pathname, collectionPath) => {
};
module.exports = {
DEFAULT_GITIGNORE,
isValidPathname,
exists,
isSymbolicLink,