| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304 | ; App name that shows on every page titleAPP_NAME = {{ gogs_cfg_app_name }}; Change it if you run locallyRUN_USER = {{ gogs_user }}; Either "dev", "prod" or "test", default is "dev"RUN_MODE = {{ gogs_cfg_mode }}[repository]ROOT = {{ gogs_repo_dir }}; Force every new repository to be privateFORCE_PRIVATE = false; Global maximum creation limit of repositories per user, -1 means no limit.MAX_CREATION_LIMIT = -1[ui]; Number of repositories that are showed in one explore pageEXPLORE_PAGING_NUM = 50; Number of issues that are showed in one pageISSUE_PAGING_NUM = 25[markdown]; Enable hard line break extensionENABLE_HARD_LINE_BREAK = {{ gogs_markdown_hard_line_break }}[server]PROTOCOL = {{ gogs_protocol }}DOMAIN = {{ gogs_domain }}ROOT_URL = https://{{ gogs_domain }}HTTP_ADDR = 127.0.0.1HTTP_PORT = {{ gogs_port }}; Local (DMZ) URL for Gogs workers (such as SSH update) accessing web service.; In most cases you do not need to change the default value.; Alter it only if your SSH server node is not the same as HTTP node.LOCAL_ROOT_URL = http://localhost:%(HTTP_PORT)s/; Disables use of CDN for static files and Gravatar for profile pictures.OFFLINE_MODE = {{ gogs_cfg_offline_mode }}; Disable SSH feature when not availableDISABLE_SSH = false; Whether use builtin SSH server or not.START_SSH_SERVER = false; Domain name to be exposed in clone URLSSH_DOMAIN = %(DOMAIN)s; Port number to be exposed in clone URLSSH_PORT = 22; Port number builtin SSH server listens onSSH_LISTEN_PORT = %(SSH_PORT)s; Root path of SSH directory, default is '~/.ssh', but you have to use '/home/git/.ssh'.SSH_ROOT_PATH =; Directory to create temporary files when test publick key using ssh-keygen,; default is system temporary directory.SSH_KEY_TEST_PATH =; Path to ssh-keygen, default is 'ssh-keygen' and let shell find out which one to call.SSH_KEYGEN_PATH = ssh-keygen; Indicate whether to check minimum key size with corresponding typeMINIMUM_KEY_SIZE_CHECK = falseDISABLE_ROUTER_LOG = false; Generate steps:; $ ./gogs cert -ca=true -duration=8760h0m0s -host=myhost.example.com;; Or from a .pfx file exported from the Windows certificate store (do; not forget to export the private key):; $ openssl pkcs12 -in cert.pfx -out cert.pem -nokeys; $ openssl pkcs12 -in cert.pfx -out key.pem -nocerts -nodes; CERT_FILE = ; KEY_FILE = ; Upper level of template and static file path; default is the path where Gogs is executedSTATIC_ROOT_PATH =; Default path for App dataAPP_DATA_PATH = data; Application level GZIP supportENABLE_GZIP = false; Landing page for non-logged users, can be "home" or "explore"LANDING_PAGE = home[database]; Either "mysql", "postgres" or "sqlite3", it's your choiceDB_TYPE = sqlite3; HOST = 127.0.0.1:5432; NAME = ; USER = ; PASSWD = ``; For "postgres" only, either "disable", "require" or "verify-full"; SSL_MODE = disablePATH = {{ gogs_sqlite_path }}[admin][security]INSTALL_LOCK = true; !!CHANGE THIS TO KEEP YOUR USER DATA SAFE!!SECRET_KEY = {{ gogs_cfg_secret_key }}; Auto-login remember daysLOGIN_REMEMBER_DAYS = 7COOKIE_USERNAME = gogs_awesomeCOOKIE_REMEMBER_NAME = gogs_incredible; Reverse proxy authentication header name of user nameREVERSE_PROXY_AUTHENTICATION_USER = X-WEBAUTH-USER[service]ACTIVE_CODE_LIVE_MINUTES = 180RESET_PASSWD_CODE_LIVE_MINUTES = 180; User need to confirm e-mail for registrationREGISTER_EMAIL_CONFIRM = false; Does not allow register and admin create account onlyDISABLE_REGISTRATION = true; User must sign in to view anything.REQUIRE_SIGNIN_VIEW = false; Mail notificationENABLE_NOTIFY_MAIL = false; More detail: https://github.com/gogits/gogs/issues/165ENABLE_REVERSE_PROXY_AUTHENTICATION = falseENABLE_REVERSE_PROXY_AUTO_REGISTRATION = false; Enable captcha validation for registrationENABLE_CAPTCHA = true[webhook]; Hook task queue lengthQUEUE_LENGTH = 1000; Deliver timeout in secondsDELIVER_TIMEOUT = 5; Allow insecure certificationSKIP_TLS_VERIFY = false; Number of history information in each pagePAGING_NUM = 10[mailer]ENABLED = false; Buffer length of channel, keep it as it is if you don't know what it is.SEND_BUFFER_LEN = 100; Name displayed in mail titleSUBJECT = %(APP_NAME)s; Mail server; Gmail: smtp.gmail.com:587; QQ: smtp.qq.com:25; Note, if the port ends with "465", SMTPS will be used. Using STARTTLS on port 587 is recommended per RFC 6409. If the server supports STARTTLS it will always be used.HOST =; Disable HELO operation when hostname are different.DISABLE_HELO =; Custom hostname for HELO operation, default is from system.HELO_HOSTNAME =; Do not verify the certificate of the server. Only use this for self-signed certificatesSKIP_VERIFY =; Use client certificateUSE_CERTIFICATE = falseCERT_FILE = custom/mailer/cert.pemKEY_FILE = custom/mailer/key.pem; Mail from address, RFC 5322. This can be just an email address, or the `"Name" <email@example.com>` formatFROM =; Mailer user name and passwordUSER =PASSWD =[cache]; Either "memory", "redis", or "memcache", default is "memory"ADAPTER = memory; For "memory" only, GC interval in seconds, default is 60INTERVAL = 60; For "redis" and "memcache", connection host address; redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180; memcache: `127.0.0.1:11211`HOST =[session]; Either "memory", "file", "redis" or "mysql", default is "memory"PROVIDER = memory; Provider config options; memory: not have any config yet; file: session file path, e.g. `data/sessions`; redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180; mysql: go-sql-driver/mysql dsn config string, e.g. `root:password@/session_table`PROVIDER_CONFIG = data/sessions; Session cookie nameCOOKIE_NAME = i_like_gogits; If you use session in https only, default is falseCOOKIE_SECURE = false; Enable set cookie, default is trueENABLE_SET_COOKIE = true; Session GC time interval, default is 86400GC_INTERVAL_TIME = 86400; Session life time, default is 86400SESSION_LIFE_TIME = 86400[picture]AVATAR_UPLOAD_PATH = data/avatars; Chinese users can choose "duoshuo"; or a custom avatar source, like: http://cn.gravatar.com/avatar/GRAVATAR_SOURCE = gravatarDISABLE_GRAVATAR = false[attachment]; Whether attachments are enabled. Defaults to `true`ENABLE = true; Path for attachments. Defaults to `data/attachments`PATH = data/attachments; One or more allowed types, e.g. image/jpeg|image/pngALLOWED_TYPES = image/jpeg|image/png; Max size of each file. Defaults to 32MBMAX_SIZE = 4; Max number of files per upload. Defaults to 10MAX_FILES = 5[time]; Specifies the format for fully outputed dates. Defaults to RFC1123; Special supported values are ANSIC, UnixDate, RubyDate, RFC822, RFC822Z, RFC850, RFC1123, RFC1123Z, RFC3339, RFC3339Nano, Kitchen, Stamp, StampMilli, StampMicro and StampNano; For more information about the format see http://golang.org/pkg/time/#pkg-constantsFORMAT =[log]ROOT_PATH =; Either "console", "file", "conn", "smtp" or "database", default is "console"; Use comma to separate multiple modes, e.g. "console, file"MODE = console; Buffer length of channel, keep it as it is if you don't know what it is.BUFFER_LEN = 10000; Either "Trace", "Debug", "Info", "Warn", "Error", "Critical", default is "Trace"LEVEL = Trace; For "console" mode only[log.console]LEVEL =; For "file" mode only[log.file]LEVEL =; This enables automated log rotate(switch of following options), default is trueLOG_ROTATE = true; Max line number of single file, default is 1000000MAX_LINES = 1000000; Max size shift of single file, default is 28 means 1 << 28, 256MBMAX_SIZE_SHIFT = 28; Segment log daily, default is trueDAILY_ROTATE = true; Expired days of log file(delete after max days), default is 7MAX_DAYS = 7; For "conn" mode only[log.conn]LEVEL =; Reconnect host for every single message, default is falseRECONNECT_ON_MSG = false; Try to reconnect when connection is lost, default is falseRECONNECT = false; Either "tcp", "unix" or "udp", default is "tcp"PROTOCOL = tcp; Host addressADDR =; For "smtp" mode only[log.smtp]LEVEL =; Name displayed in mail title, default is "Diagnostic message from server"SUBJECT = Diagnostic message from server; Mail serverHOST =; Mailer user name and passwordUSER =PASSWD =; Receivers, can be one or more, e.g. ["1@example.com","2@example.com"]RECEIVERS =; For "database" mode only[log.database]LEVEL =; Either "mysql" or "postgres"DRIVER =; Based on xorm, e.g.: root:root@localhost/gogs?charset=utf8CONN =[cron]; Enable running cron tasks periodically.ENABLED = true; Run cron tasks when Gogs starts.RUN_AT_START = false; Update mirrors[cron.update_mirrors]SCHEDULE = @every 1h; Repository health check[cron.repo_health_check]SCHEDULE = @every 24hTIMEOUT = 60s; Arguments for command 'git fsck', e.g. "--unreachable --tags"; see more on http://git-scm.com/docs/git-fsck/1.7.5ARGS =; Check repository statistics[cron.check_repo_stats]RUN_AT_START = trueSCHEDULE = @every 24h[other]SHOW_FOOTER_BRANDING = false; Show version information about gogs and go in the footerSHOW_FOOTER_VERSION = true
 |