diff options
44 files changed, 71 insertions, 51 deletions
diff --git a/cmd/cert.go b/cmd/cert.go index 631c4c6823..0a09b00344 100644 --- a/cmd/cert.go +++ b/cmd/cert.go @@ -114,6 +114,7 @@ func runCert(ctx *cli.Context) { SerialNumber: serialNumber, Subject: pkix.Name{ Organization: []string{"Acme Co"}, + CommonName: "Gogs", }, NotBefore: notBefore, NotAfter: notAfter, diff --git a/conf/locale/locale_de-DE.ini b/conf/locale/locale_de-DE.ini index ca9b134794..6cc2d75192 100755 --- a/conf/locale/locale_de-DE.ini +++ b/conf/locale/locale_de-DE.ini @@ -343,6 +343,7 @@ releases=Veröffentlichungen file_raw=Roh
file_history=Verlauf
file_view_raw=Ansicht Roh
+file_permalink=Permalink
commits.commits=Commits
commits.search=Durchsuche Commits
diff --git a/conf/locale/locale_en-US.ini b/conf/locale/locale_en-US.ini index 841e4201bd..d7c4e0ec1c 100644 --- a/conf/locale/locale_en-US.ini +++ b/conf/locale/locale_en-US.ini @@ -343,6 +343,7 @@ releases = Releases file_raw = Raw file_history = History file_view_raw = View Raw +file_permalink = Permalink commits.commits = Commits commits.search = Search commits diff --git a/conf/locale/locale_es-ES.ini b/conf/locale/locale_es-ES.ini index f947d4ef18..c200ef2575 100755 --- a/conf/locale/locale_es-ES.ini +++ b/conf/locale/locale_es-ES.ini @@ -343,6 +343,7 @@ releases=Releases file_raw=Raw
file_history=Histórico
file_view_raw=Ver Raw
+file_permalink=Permalink
commits.commits=Commits
commits.search=Buscar Commits
diff --git a/conf/locale/locale_fr-FR.ini b/conf/locale/locale_fr-FR.ini index 0a137c0355..0a8c363f13 100755 --- a/conf/locale/locale_fr-FR.ini +++ b/conf/locale/locale_fr-FR.ini @@ -343,6 +343,7 @@ releases=Publications file_raw=Raw
file_history=Historique
file_view_raw=Voir le Raw
+file_permalink=Permalink
commits.commits=Commissions
commits.search=Rechercher des commissions
diff --git a/conf/locale/locale_ja-JP.ini b/conf/locale/locale_ja-JP.ini index 48ccd434da..ea50eb7794 100755 --- a/conf/locale/locale_ja-JP.ini +++ b/conf/locale/locale_ja-JP.ini @@ -343,6 +343,7 @@ releases=リリース file_raw=生データ
file_history=履歴
file_view_raw=生データを見る
+file_permalink=Permalink
commits.commits=コミット
commits.search=コミットの検索
diff --git a/conf/locale/locale_lv-LV.ini b/conf/locale/locale_lv-LV.ini index 93dad75422..1e7da6c074 100755 --- a/conf/locale/locale_lv-LV.ini +++ b/conf/locale/locale_lv-LV.ini @@ -341,6 +341,7 @@ releases=Laidieni file_raw=Neapstrādāts
file_history=Vēsture
file_view_raw=Rādīt neapstrādātu
+file_permalink=Permalink
commits.commits=Revīzijas
commits.search=Meklēt revīzijas
diff --git a/conf/locale/locale_nl-NL.ini b/conf/locale/locale_nl-NL.ini index 39db5db701..cbc179717b 100755 --- a/conf/locale/locale_nl-NL.ini +++ b/conf/locale/locale_nl-NL.ini @@ -343,6 +343,7 @@ releases=Publicaties file_raw=Ruwe
file_history=Geschiedenis
file_view_raw=Weergave ruwe
+file_permalink=Permalink
commits.commits=Commits
commits.search=Zoeken
diff --git a/conf/locale/locale_pl-PL.ini b/conf/locale/locale_pl-PL.ini index f2119177f0..13429a50c5 100755 --- a/conf/locale/locale_pl-PL.ini +++ b/conf/locale/locale_pl-PL.ini @@ -343,6 +343,7 @@ releases=Wydania file_raw=Czysty
file_history=Historia
file_view_raw=Zobacz czysty
+file_permalink=Permalink
commits.commits=Commity
commits.search=Przeszukaj commity
diff --git a/conf/locale/locale_pt-BR.ini b/conf/locale/locale_pt-BR.ini index 8554068a1d..f6df5a4431 100755 --- a/conf/locale/locale_pt-BR.ini +++ b/conf/locale/locale_pt-BR.ini @@ -343,6 +343,7 @@ releases=Lançamentos file_raw=Cru
file_history=Histórico
file_view_raw=Ver cru
+file_permalink=Permalink
commits.commits=Commits
commits.search=Pesquisar commits
diff --git a/conf/locale/locale_ru-RU.ini b/conf/locale/locale_ru-RU.ini index 942c001360..ae0b7e0927 100755 --- a/conf/locale/locale_ru-RU.ini +++ b/conf/locale/locale_ru-RU.ini @@ -343,6 +343,7 @@ releases=Релизы file_raw=Исходник
file_history=История
file_view_raw=Посмотреть исходник
+file_permalink=Permalink
commits.commits=Коммиты
commits.search=Поиск коммитов
diff --git a/conf/locale/locale_zh-CN.ini b/conf/locale/locale_zh-CN.ini index 347e697639..da9435108e 100755 --- a/conf/locale/locale_zh-CN.ini +++ b/conf/locale/locale_zh-CN.ini @@ -343,6 +343,7 @@ releases=版本发布 file_raw=原始文件
file_history=文件历史
file_view_raw=查看原始文件
+file_permalink=Permalink
commits.commits=次代码提交
commits.search=搜索提交历史
diff --git a/conf/locale/locale_zh-HK.ini b/conf/locale/locale_zh-HK.ini index 92a3916946..660221091f 100755 --- a/conf/locale/locale_zh-HK.ini +++ b/conf/locale/locale_zh-HK.ini @@ -341,6 +341,7 @@ releases=版本發佈 file_raw=原始文件
file_history=文件歷史
file_view_raw=查看原始文件
+file_permalink=Permalink
commits.commits=次代碼提交
commits.search=搜索提交歷史
diff --git a/docker/README.md b/docker/README.md index 9f82cf7626..2ef372711f 100644 --- a/docker/README.md +++ b/docker/README.md @@ -3,13 +3,13 @@ Docker TOOLS ARE WRITTEN FOR TESTING AND TO SEE WHAT IT IS! -For this to work you will need the nifty docker tool [fig]. +For this to work you will need the nifty docker tool [docker-compose]. The most simple setup will look like this: ```sh ./assemble_blocks.sh docker_gogs w_db option_db_mysql -fig up +docker-compose up ``` @@ -22,21 +22,21 @@ How does it work ---------------- `./assemble_blocks.sh` will look in `blocks` for subdirectories. -In the subdirectories there are three relevant files: `Dockerfile`, `config` and `fig`. +In the subdirectories there are three relevant files: `Dockerfile`, `config` and `docker-compose`. `Dockerfile` will be copied to `docker/` (also means last `Dockerfile` wins). The `config` file contains lines which will in the gogs docker container end up in `$GOGS_PATH/custom/config/app.ini` and by this gogs will be configured. Here you can define things like the MySQL server for your database block. -The `fig` file will just be added to `fig.yml`, which is used by fig to manage your containers. +The `docker-compose` file will just be added to `docker-compose.yml`, which is used by docker-compose to manage your containers. This includes container linking! Just have a look at them and it will be clear how to write your own blocks. Just some things - - all files (`Dockerfile`, `fig` and `config`) are optional + - all files (`Dockerfile`, `docker-compose` and `config`) are optional - the gogs block should always be the first block Currently the blocks are designed that, the blocks that start with `docker` pull in the base docker image. @@ -57,14 +57,11 @@ Here is a more elaborated example ```sh ./assemble_blocks.sh docker_gogs w_db_cache_session option_db_postgresql option_cache_redis option_session_mysql -fig up +docker-compose up ``` This will set up four containters and link them proberly. One for each of - - - gogs - - database (postgresql) - - cache (redis) +docker-compose - session (mysql) WARNING: This will not work at the Moment! MySQL session is broken! @@ -73,7 +70,7 @@ WARNING: This will not work at the Moment! MySQL session is broken! Remark ------ -After you execute `assemble_blocks.sh` you should always trigger `fig build` to inculde the the new init script `init_gogs.sh` in the docker image. +After you execute `assemble_blocks.sh` you should always trigger `docker-compose build` to inculde the the new init script `init_gogs.sh` in the docker image. If you want to use another GoGS docker file, but keep everything else the same, you can create a block, e.g. `docker_gogs_custom`, with only a `Dockerfile` and call @@ -86,4 +83,4 @@ This will pull in the `Dockerfile` from `docker_gogs` instead of the one from `d `Dockerfile`s for the `master` and `dev` branch are provided as `docker_gogs` and `docker_gogs_dev` -[fig]:http://www.fig.sh/ +[docker-compose]:https://docs.docker.com/compose/ diff --git a/docker/assemble_blocks.sh b/docker/assemble_blocks.sh index 852064de28..3109a6a090 100755 --- a/docker/assemble_blocks.sh +++ b/docker/assemble_blocks.sh @@ -10,8 +10,8 @@ gogs_config_file=conf.tmp gogs_config=config gogs_init_file=$docker_dir/init_gogs.sh -fig_file=fig.yml -fig_config=fig +compose_file=docker-compose.yml +compose_config=docker-compose gogs_init_template=$template_dir/init_gogs.sh.tpl @@ -28,7 +28,7 @@ if [ "$#" == 0 ]; then exit 0 fi -for file in $gogs_config_file $fig_file; do +for file in $gogs_config_file $compose_file; do if [ -e $file ]; then echo "Deleting $file" rm $file @@ -53,10 +53,10 @@ for dir in $@; do echo "" >> $gogs_config_file fi - if [ -e $current_dir/$fig_config ]; then - echo "Adding $current_dir/$fig_config to $fig_file" - cat $current_dir/fig >> $fig_file - echo "" >> $fig_file + if [ -e $current_dir/$compose_config ]; then + echo "Adding $current_dir/$compose_config to $compose_file" + cat $current_dir/$compose_config >> $compose_file + echo "" >> $compose_file fi done @@ -69,4 +69,4 @@ d if [ -e $gogs_config_file ]; then echo "Removing temporary GoGS config" rm $gogs_config_file -fi
\ No newline at end of file +fi diff --git a/docker/blocks/docker_gogs/Dockerfile b/docker/blocks/docker_gogs/Dockerfile index efedc31a80..1b58fbcf92 100644 --- a/docker/blocks/docker_gogs/Dockerfile +++ b/docker/blocks/docker_gogs/Dockerfile @@ -1,23 +1,20 @@ -FROM ubuntu:14.04 +FROM buildpack-deps:trusty-scm # This part is taken from the official docker image -------------------- RUN apt-get update && apt-get install -y \ - build-essential ca-certificates curl \ - bzr git mercurial openssh-client\ - --no-install-recommends + build-essential --no-install-recommends ENV GOLANG_VERSION 1.3 -RUN curl -sSL http://golang.org/dl/go$GOLANG_VERSION.src.tar.gz \ - | tar -v -C /usr/src -xz -WORKDIR /usr/src/go +RUN curl -sSL https://golang.org/dl/go$GOLANG_VERSION.src.tar.gz \ + | tar -v -C /usr/src -xz -RUN cd src && ./make.bash --no-clean 2>&1 +RUN cd /usr/src/go/src && ./make.bash --no-clean 2>&1 ENV PATH /usr/src/go/bin:$PATH -RUN mkdir -p /go/src +RUN mkdir -p /go/src /go/bin && chmod -R 777 /go ENV GOPATH /go ENV PATH /go/bin:$PATH WORKDIR /go diff --git a/docker/blocks/docker_gogs_dev/Dockerfile b/docker/blocks/docker_gogs_dev/Dockerfile index ce653fbe7e..a51d165ee8 100644 --- a/docker/blocks/docker_gogs_dev/Dockerfile +++ b/docker/blocks/docker_gogs_dev/Dockerfile @@ -1,24 +1,20 @@ -FROM ubuntu:14.04 +FROM buildpack-deps:trusty-scm -# This part is derived from the official docker image ------------------ +# This part is taken from the official docker image -------------------- -RUN DEBIAN_FRONTEND=noninteractive apt-get update && \ - apt-get install -qy \ - build-essential ca-certificates curl \ - bzr git mercurial openssh-client\ - --no-install-recommends +RUN apt-get update && apt-get install -y \ + build-essential --no-install-recommends ENV GOLANG_VERSION 1.3 -RUN curl -sSL http://golang.org/dl/go$GOLANG_VERSION.src.tar.gz \ - | tar -v -C /usr/src -xz -WORKDIR /usr/src/go +RUN curl -sSL https://golang.org/dl/go$GOLANG_VERSION.src.tar.gz \ + | tar -v -C /usr/src -xz -RUN cd src && ./make.bash --no-clean 2>&1 +RUN cd /usr/src/go/src && ./make.bash --no-clean 2>&1 ENV PATH /usr/src/go/bin:$PATH -RUN mkdir -p /go/src +RUN mkdir -p /go/src /go/bin && chmod -R 777 /go ENV GOPATH /go ENV PATH /go/bin:$PATH WORKDIR /go diff --git a/docker/blocks/option_cache_memcache/fig b/docker/blocks/option_cache_memcache/docker-compose index 80d0215cc7..80d0215cc7 100644 --- a/docker/blocks/option_cache_memcache/fig +++ b/docker/blocks/option_cache_memcache/docker-compose diff --git a/docker/blocks/option_cache_redis/fig b/docker/blocks/option_cache_redis/docker-compose index 0e74bc4aef..0e74bc4aef 100644 --- a/docker/blocks/option_cache_redis/fig +++ b/docker/blocks/option_cache_redis/docker-compose diff --git a/docker/blocks/option_db_mysql/fig b/docker/blocks/option_db_mysql/docker-compose index a005a0593c..a005a0593c 100644 --- a/docker/blocks/option_db_mysql/fig +++ b/docker/blocks/option_db_mysql/docker-compose diff --git a/docker/blocks/option_db_postgresql/fig b/docker/blocks/option_db_postgresql/docker-compose index c839e90448..c839e90448 100644 --- a/docker/blocks/option_db_postgresql/fig +++ b/docker/blocks/option_db_postgresql/docker-compose diff --git a/docker/blocks/option_session_mysql/fig b/docker/blocks/option_session_mysql/docker-compose index 0e2dbf19c9..0e2dbf19c9 100644 --- a/docker/blocks/option_session_mysql/fig +++ b/docker/blocks/option_session_mysql/docker-compose diff --git a/docker/blocks/w_cache/fig b/docker/blocks/w_cache/docker-compose index fd66c35786..fd66c35786 100644 --- a/docker/blocks/w_cache/fig +++ b/docker/blocks/w_cache/docker-compose diff --git a/docker/blocks/w_cache_session/fig b/docker/blocks/w_cache_session/docker-compose index 0f90114064..0f90114064 100644 --- a/docker/blocks/w_cache_session/fig +++ b/docker/blocks/w_cache_session/docker-compose diff --git a/docker/blocks/w_db/fig b/docker/blocks/w_db/docker-compose index a7e9c1b69a..a7e9c1b69a 100644 --- a/docker/blocks/w_db/fig +++ b/docker/blocks/w_db/docker-compose diff --git a/docker/blocks/w_db_cache/fig b/docker/blocks/w_db_cache/docker-compose index 42402e40f3..42402e40f3 100644 --- a/docker/blocks/w_db_cache/fig +++ b/docker/blocks/w_db_cache/docker-compose diff --git a/docker/blocks/w_db_cache_session/fig b/docker/blocks/w_db_cache_session/docker-compose index 42444405af..42444405af 100644 --- a/docker/blocks/w_db_cache_session/fig +++ b/docker/blocks/w_db_cache_session/docker-compose diff --git a/docker/blocks/w_db_session/fig b/docker/blocks/w_db_session/docker-compose index 3703c6ba33..3703c6ba33 100644 --- a/docker/blocks/w_db_session/fig +++ b/docker/blocks/w_db_session/docker-compose diff --git a/docker/blocks/w_none/fig b/docker/blocks/w_none/docker-compose index c0fed209d6..c0fed209d6 100644 --- a/docker/blocks/w_none/fig +++ b/docker/blocks/w_none/docker-compose diff --git a/docker/blocks/w_session/fig b/docker/blocks/w_session/docker-compose index 7dda0dde92..7dda0dde92 100644 --- a/docker/blocks/w_session/fig +++ b/docker/blocks/w_session/docker-compose diff --git a/modules/auth/admin.go b/modules/auth/admin.go index e6cc82cd34..a95b83de6a 100644 --- a/modules/auth/admin.go +++ b/modules/auth/admin.go @@ -11,6 +11,7 @@ import ( ) type AdminEditUserForm struct { + FullName string `form:"fullname" binding:"MaxSize(100)"` Email string `binding:"Required;Email;MaxSize(50)"` Password string `binding:"OmitEmpty;MinSize(6);MaxSize(255)"` Website string `binding:"MaxSize(50)"` diff --git a/modules/base/markdown.go b/modules/base/markdown.go index d06e1338e7..e860f9705c 100644 --- a/modules/base/markdown.go +++ b/modules/base/markdown.go @@ -198,7 +198,7 @@ func RenderRawMarkdown(body []byte, urlPrefix string) []byte { extensions |= blackfriday.EXTENSION_FENCED_CODE extensions |= blackfriday.EXTENSION_AUTOLINK extensions |= blackfriday.EXTENSION_STRIKETHROUGH - extensions |= blackfriday.EXTENSION_HARD_LINE_BREAK + //extensions |= blackfriday.EXTENSION_HARD_LINE_BREAK extensions |= blackfriday.EXTENSION_SPACE_HEADERS extensions |= blackfriday.EXTENSION_NO_EMPTY_LINE_BEFORE_BLOCK diff --git a/packager/debian/postinst b/packager/debian/postinst index c0b06b0233..964e8148f8 100755 --- a/packager/debian/postinst +++ b/packager/debian/postinst @@ -18,8 +18,6 @@ case "$1" in chown ${APP_USER}.${APP_GROUP} $(dirname ${APP_CONFIG}) [ -f ${APP_CONFIG} ] || ${CLI} run cp conf/app.ini ${APP_CONFIG} ${CLI} config:set USER=${APP_USER} - PORT=$(${CLI} config:get PORT || echo "6000") - sed -i "s|HTTP_PORT = 3000|HTTP_PORT = ${PORT}|" ${APP_CONFIG} sed -i "s|RUN_USER = git|RUN_USER = ${APP_USER}|" ${APP_CONFIG} sed -i "s|RUN_MODE = dev|RUN_MODE = prod|" ${APP_CONFIG} diff --git a/routers/admin/users.go b/routers/admin/users.go index ddcca6390e..12c52236f9 100644 --- a/routers/admin/users.go +++ b/routers/admin/users.go @@ -185,6 +185,7 @@ func EditUserPost(ctx *middleware.Context, form auth.AdminEditUserForm) { u.EncodePasswd() } + u.FullName = form.FullName u.Email = form.Email u.Website = form.Website u.Location = form.Location diff --git a/routers/repo/download.go b/routers/repo/download.go index c5e18e005b..b1c5fbc84d 100644 --- a/routers/repo/download.go +++ b/routers/repo/download.go @@ -27,7 +27,6 @@ func ServeBlob(ctx *middleware.Context, blob *git.Blob) error { _, isTextFile := base.IsTextFile(buf) _, isImageFile := base.IsImageFile(buf) - ctx.Resp.Header().Set("Content-Type", "text/plain") if !isTextFile && !isImageFile { ctx.Resp.Header().Set("Content-Disposition", "attachment; filename="+path.Base(ctx.Repo.TreeName)) ctx.Resp.Header().Set("Content-Transfer-Encoding", "binary") diff --git a/scripts/build.sh b/scripts/build.sh index ea43bdafcb..cf127c2aee 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -4,8 +4,14 @@ rm -rf $outPath mkdir $outPath go build ../gogs.go -chmod +x gogs -mv gogs $outPath/ +PLATFORM=`uname | cut -d _ -f 1` +if [ $PLATFORM = "MINGW32" ] || [ $PLATFORM = "MINGW64" ] || [ $PLATFORM = "CYGWIN" ]; then + GOGS_EXE=gogs.exe +else + GOGS_EXE=gogs +fi +chmod +x $GOGS_EXE +mv $GOGS_EXE $outPath/ cp -r ../conf/ $outPath/conf/ cp -r ../custom/ $outPath/custom/ diff --git a/scripts/init/freebsd/gogs b/scripts/init/freebsd/gogs index df13ee0d9c..e1d3bdee90 100644 --- a/scripts/init/freebsd/gogs +++ b/scripts/init/freebsd/gogs @@ -21,7 +21,7 @@ load_rc_config $name : ${gogs_enable:="NO"} : ${gogs_directory:="/home/git"} -command="${gogs_directory}/scripts/start.sh" +command="${gogs_directory}/gogs web" pidfile="${gogs_directory}/${name}.pid" diff --git a/scripts/systemd/gogs.service b/scripts/systemd/gogs.service index 7436e46ae6..95567eaa96 100644 --- a/scripts/systemd/gogs.service +++ b/scripts/systemd/gogs.service @@ -14,7 +14,7 @@ Group=git WorkingDirectory=/home/git/gogs ExecStart=/home/git/gogs/gogs web Restart=always -Environment="USER=git","HOME=/home/git" +Environment=USER=git HOME=/home/git [Install] WantedBy=multi-user.target diff --git a/templates/admin/user/edit.tmpl b/templates/admin/user/edit.tmpl index bdc0e3343f..4f4cc727ab 100644 --- a/templates/admin/user/edit.tmpl +++ b/templates/admin/user/edit.tmpl @@ -33,6 +33,10 @@ <label class="text-left">{{.User.Name}}</label> </div> <div class="field"> + <label for="full-name">{{.i18n.Tr "settings.full_name"}}</label> + <input class="ipt ipt-large ipt-radius {{if .Err_FullName}}ipt-error{{end}}" id="full-name" name="fullname" type="text" value="{{.User.FullName}}" /> + </div> + <div class="field"> <label class="req" for="email">{{.i18n.Tr "email"}}</label> <input class="ipt ipt-large ipt-radius {{if .Err_Email}}ipt-error{{end}}" id="email" name="email" type="email" value="{{.User.Email}}" required/> </div> diff --git a/templates/base/head.tmpl b/templates/base/head.tmpl index d057754410..8551801d01 100644 --- a/templates/base/head.tmpl +++ b/templates/base/head.tmpl @@ -6,6 +6,7 @@ <meta name="author" content="Gogs - Go Git Service" /> <meta name="description" content="Gogs(Go Git Service) a painless self-hosted Git Service written in Go" /> <meta name="keywords" content="go, git, self-hosted, gogs"> + <meta name="referrer" content="no-referrer" /> <meta name="_csrf" content="{{.CsrfToken}}" /> {{if .GoGetImport}} <meta name="go-import" content="{{.GoGetImport}} git {{.CloneLink.HTTPS}}"> diff --git a/templates/base/head_old.tmpl b/templates/base/head_old.tmpl index e04fe2e1a7..fc2a86788d 100644 --- a/templates/base/head_old.tmpl +++ b/templates/base/head_old.tmpl @@ -8,6 +8,7 @@ <meta name="author" content="Gogs - Go Git Service" /> <meta name="description" content="Gogs(Go Git Service) is a GitHub-like clone in the Go Programming Language" /> <meta name="keywords" content="go, git"> + <meta name="referrer" content="no-referrer" /> <meta name="_csrf" content="{{.CsrfToken}}" /> {{if .GoGetImport}}<meta name="go-import" content="{{.GoGetImport}} git {{.CloneLink.HTTPS}}">{{end}} diff --git a/templates/install.tmpl b/templates/install.tmpl index ece78859e9..df98737626 100644 --- a/templates/install.tmpl +++ b/templates/install.tmpl @@ -187,7 +187,7 @@ </div> <div class="inline field {{if .Err_AdminPasswd}}error{{end}}"> <label for="admin_passwd">{{.i18n.Tr "install.admin_password"}}</label> - <input id="admin_passwd" name="admin_passwd" value="{{.admin_passwd}}"> + <input id="admin_passwd" name="admin_passwd" type="password" value="{{.admin_passwd}}"> </div> <div class="inline field {{if .Err_AdminPasswd}}error{{end}}"> <label for="admin_confirm_passwd">{{.i18n.Tr "install.confirm_password"}}</label> @@ -210,4 +210,4 @@ </div> </div> </div> -{{template "base/footer" .}}
\ No newline at end of file +{{template "base/footer" .}} diff --git a/templates/ng/base/head.tmpl b/templates/ng/base/head.tmpl index f2a235bd43..6d5001a9cb 100644 --- a/templates/ng/base/head.tmpl +++ b/templates/ng/base/head.tmpl @@ -6,6 +6,7 @@ <meta name="author" content="Gogs - Go Git Service" /> <meta name="description" content="Gogs(Go Git Service) a painless self-hosted Git Service written in Go" /> <meta name="keywords" content="go, git, self-hosted, gogs"> + <meta name="referrer" content="no-referrer" /> <meta name="_csrf" content="{{.CsrfToken}}" /> {{if .GoGetImport}}<meta name="go-import" content="{{.GoGetImport}} git {{.CloneLink.HTTPS}}">{{end}} diff --git a/templates/repo/view_file.tmpl b/templates/repo/view_file.tmpl index d33cc95023..4d11170bd0 100644 --- a/templates/repo/view_file.tmpl +++ b/templates/repo/view_file.tmpl @@ -12,6 +12,11 @@ <strong class="file-name">{{.FileName}}</strong><span class="file-size">{{FileSize .FileSize}}</span> {{end}} {{if not .ReadmeInList}} + {{if not .IsCommit}} + <a class="right" href="{{.RepoLink}}/src/{{.CommitId}}/{{.TreeName}}"> + <button class="btn btn-medium btn-gray btn-right-radius btn-comb">{{.i18n.Tr "repo.file_permalink"}}</button> + </a> + {{end}} <a class="right" href="{{.RepoLink}}/commits/{{EscapePound .BranchName}}/{{.TreeName}}"> <button class="btn btn-medium btn-gray btn-right-radius btn-comb">{{.i18n.Tr "repo.file_history"}}</button> </a> |