diff --git a/cli/src/action/application/index.ts b/cli/src/action/application/index.ts index fed0bee240..0a24d03be3 100644 --- a/cli/src/action/application/index.ts +++ b/cli/src/action/application/index.ts @@ -3,8 +3,10 @@ import * as Table from 'cli-table3'; import { ApplicationConfig, existApplicationConfig, writeApplicationConfig } from "../../config/application" import * as path from 'node:path' import * as fs from 'node:fs' -import { FUNCTIONS_DIRECTORY_NAME, GLOBAL_FILE, PACKAGE_FILE, RESPONSE_FILE, TEMPLATE_DIR, TSCONFIG_FILE, TYPE_DIR } from "../../common/constant" + +import { FUNCTIONS_DIRECTORY_NAME, GITIGNORE_FILE, GLOBAL_FILE, PACKAGE_FILE, RESPONSE_FILE, TEMPLATE_DIR, TSCONFIG_FILE, TYPE_DIR } from "../../common/constant" import { ensureDirectory } from "../../util/file" + import { refreshSecretConfig } from "../../config/secret" import { getEmoji } from "../../util/print"; @@ -87,6 +89,14 @@ function initFunction() { const fromTsConfigFile = path.resolve(templateDir, TSCONFIG_FILE) const outTsConfigFile = path.resolve(process.cwd(), TSCONFIG_FILE) fs.writeFileSync(outTsConfigFile, fs.readFileSync(fromTsConfigFile, 'utf-8')) + + // generate .gitignore + const fromGitIgnoreFile = path.resolve(templateDir, GITIGNORE_FILE) + const outGitIgnoreFile = path.resolve(process.cwd(), GITIGNORE_FILE) + if (!exist(outGitIgnoreFile)) { + fs.writeFileSync(outGitIgnoreFile, fs.readFileSync(fromGitIgnoreFile, 'utf-8')) + } + } function initPolicy() { diff --git a/cli/src/common/constant.ts b/cli/src/common/constant.ts index c219bb52a0..4df3c4da85 100644 --- a/cli/src/common/constant.ts +++ b/cli/src/common/constant.ts @@ -8,8 +8,10 @@ export const FUNCTIONS_DIRECTORY_NAME = 'functions' export const FUNCTIONS_CONFIG_FILE_SUFFIX_NAME = '.meta.yaml' export const COLLECTIONS_DIRECTORY_NAME = 'collections' export const COLLECTIONS_CONFIG_FILE_SUFFIX_NAME = '.meta.yaml' +export const IGNORE_FILE_NAME = '.gitignore' export const POLICIES_DIRECTORY_NAME = 'policies' + // token expire time 7 days export const TOKEN_EXPIRE = 3600 * 24 * 7 @@ -28,4 +30,5 @@ export const TYPE_DIR = 'types' export const GLOBAL_FILE = 'global.d.ts' export const PACKAGE_FILE = 'package.json' export const RESPONSE_FILE = 'response.d.ts' -export const TSCONFIG_FILE = 'tsconfig.json' \ No newline at end of file +export const TSCONFIG_FILE = 'tsconfig.json' +export const GITIGNORE_FILE = '.gitignore' \ No newline at end of file diff --git a/cli/template/.gitignore b/cli/template/.gitignore new file mode 100644 index 0000000000..6d326bb387 --- /dev/null +++ b/cli/template/.gitignore @@ -0,0 +1,5 @@ +package.json +tsconfig.json +types +node_modules +.secret.yaml \ No newline at end of file