Upload via GUI (28 Dateien)
This commit is contained in:
@@ -0,0 +1,70 @@
|
||||
// Vorlagen für die .gitignore, die per Knopf in ein Repo geschrieben werden.
|
||||
|
||||
const GENERAL = `# Betriebssystem / Editor
|
||||
.DS_Store
|
||||
Thumbs.db
|
||||
desktop.ini
|
||||
.vscode/
|
||||
.idea/
|
||||
|
||||
# Zugangsdaten und Logs
|
||||
.env
|
||||
.env.*
|
||||
*.pem
|
||||
*.key
|
||||
*.log
|
||||
`;
|
||||
|
||||
const TEMPLATES = {
|
||||
node: {
|
||||
label: 'Node.js',
|
||||
content: `# Node.js
|
||||
node_modules/
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
.npm/
|
||||
.cache/
|
||||
`
|
||||
},
|
||||
dotnet: {
|
||||
label: '.NET',
|
||||
content: `# .NET
|
||||
bin/
|
||||
obj/
|
||||
.vs/
|
||||
*.user
|
||||
*.suo
|
||||
*.nupkg
|
||||
`
|
||||
},
|
||||
electron: {
|
||||
label: 'Electron',
|
||||
content: `# Electron
|
||||
dist/
|
||||
out/
|
||||
release/
|
||||
*.exe
|
||||
*.blockmap
|
||||
*.sha256
|
||||
`
|
||||
}
|
||||
};
|
||||
|
||||
function listTemplates() {
|
||||
return Object.entries(TEMPLATES).map(([key, t]) => ({ key, label: t.label }));
|
||||
}
|
||||
|
||||
// Baut die Datei aus dem allgemeinen Teil und den gewählten Vorlagen (unbekannte Schlüssel entfallen).
|
||||
function buildGitignore(keys) {
|
||||
const parts = [GENERAL];
|
||||
const seen = new Set();
|
||||
for (const key of keys || []) {
|
||||
if (seen.has(key) || !Object.prototype.hasOwnProperty.call(TEMPLATES, key)) continue;
|
||||
seen.add(key);
|
||||
parts.push(TEMPLATES[key].content);
|
||||
}
|
||||
return parts.join('\n');
|
||||
}
|
||||
|
||||
module.exports = { listTemplates, buildGitignore };
|
||||
Reference in New Issue
Block a user