├── .babelrc
├── .editorconfig
├── .gitignore
├── .postcssrc.js
├── README.md
├── build
├── build.js
├── check-versions.js
├── dev-client.js
├── dev-server.js
├── utils.js
├── vue-loader.conf.js
├── webpack.base.conf.js
├── webpack.dev.conf.js
└── webpack.prod.conf.js
├── config
├── dev.env.js
├── index.js
└── prod.env.js
├── doc
└── svnbucketqrcode.jpg
├── index.html
├── package-lock.json
├── package.json
├── src
├── App.vue
├── assets
│ ├── css
│ │ ├── head.css
│ │ ├── index.css
│ │ └── main.css
│ ├── img
│ │ ├── 11.jpg
│ │ ├── Github.svg
│ │ ├── QQ.svg
│ │ ├── SVNBucket.png
│ │ ├── SVNBucket.svg
│ │ ├── about-big-start.png
│ │ ├── about-little-start.png
│ │ ├── about-spaceman.png
│ │ ├── accout-setting.svg
│ │ ├── add-folder-arrow.svg
│ │ ├── add-member-search.svg
│ │ ├── add-member-selected-gray.svg
│ │ ├── add-member-selected.svg
│ │ ├── add-project-N.svg
│ │ ├── add-project-Y.svg
│ │ ├── add-project-close.svg
│ │ ├── add-project-type-Y.svg
│ │ ├── airship.png
│ │ ├── airship.svg
│ │ ├── arrow-right.svg
│ │ ├── bg.jpg
│ │ ├── big-eddy.png
│ │ ├── big-eddy.svg
│ │ ├── big-start.png
│ │ ├── big-start.svg
│ │ ├── catalog-admin-N.svg
│ │ ├── catalog-admin-Y.svg
│ │ ├── clear-input.svg
│ │ ├── code-introduce.png
│ │ ├── code-manage.svg
│ │ ├── collect-N.svg
│ │ ├── collect-Y.svg
│ │ ├── computer.svg
│ │ ├── contact-us.svg
│ │ ├── detail-code-N.svg
│ │ ├── detail-code-Y.svg
│ │ ├── detail-code-file.svg
│ │ ├── detail-code-folder.svg
│ │ ├── detail-code-return.svg
│ │ ├── detail-code-select.svg
│ │ ├── detail-download-N.svg
│ │ ├── detail-download-Y.svg
│ │ ├── detail-hook-N.svg
│ │ ├── detail-hook-Y.svg
│ │ ├── detail-member-N.svg
│ │ ├── detail-member-Y.svg
│ │ ├── detail-project-return.svg
│ │ ├── detail-record-N.svg
│ │ ├── detail-record-Y.svg
│ │ ├── detail-setting-N.svg
│ │ ├── detail-setting-Y.svg
│ │ ├── detail-user-setting-N.svg
│ │ ├── detail-user-setting-Y.svg
│ │ ├── detail-wiki-N.svg
│ │ ├── detail-wiki-Y.svg
│ │ ├── downDesktop.svg
│ │ ├── folder-delete.svg
│ │ ├── folder-introduce.png
│ │ ├── folder.svg
│ │ ├── head-add-Y.svg
│ │ ├── head-add.svg
│ │ ├── head-arrow-checked.svg
│ │ ├── head-hasMessage.svg
│ │ ├── head-help-Y.svg
│ │ ├── head-help.svg
│ │ ├── head-message-Y.svg
│ │ ├── head-message.svg
│ │ ├── head-user-arrow-Y.svg
│ │ ├── head-user-arrow.svg
│ │ ├── header-arrow.svg
│ │ ├── header-project-list-N.svg
│ │ ├── header-project-list-Y.svg
│ │ ├── hook-introduce.png
│ │ ├── hook-mark.svg
│ │ ├── hook-record-N.svg
│ │ ├── hook-record-Y.svg
│ │ ├── hook.svg
│ │ ├── house.png
│ │ ├── house.svg
│ │ ├── if-nothing.svg
│ │ ├── little-eddy.png
│ │ ├── little-eddy.svg
│ │ ├── little-start.png
│ │ ├── little-start.svg
│ │ ├── lock.svg
│ │ ├── log-out.svg
│ │ ├── logo.jpeg
│ │ ├── logo.png
│ │ ├── lots-little-start.png
│ │ ├── lots-little-start.svg
│ │ ├── map.png
│ │ ├── member-delete.svg
│ │ ├── member-history.svg
│ │ ├── member-introduce.png
│ │ ├── member-modify-N.svg
│ │ ├── member-modify-Y.svg
│ │ ├── member-type-admin.svg
│ │ ├── member-type-owner.svg
│ │ ├── member.svg
│ │ ├── message-N.svg
│ │ ├── message-Y.svg
│ │ ├── message-bell.svg
│ │ ├── message-read.svg
│ │ ├── message-unread.svg
│ │ ├── mobile-phone.svg
│ │ ├── p-dynamic-hl.svg
│ │ ├── p-dynamic.svg
│ │ ├── p-project-search.svg
│ │ ├── p-projects-list-hl.svg
│ │ ├── p-projects-list.svg
│ │ ├── passcode.jpg
│ │ ├── phone.svg
│ │ ├── project-creat.png
│ │ ├── project-introduce.png
│ │ ├── project-member-N.svg
│ │ ├── project-member-Y.svg
│ │ ├── project-search.svg
│ │ ├── project-selected.svg
│ │ ├── project-type-select.svg
│ │ ├── project.svg
│ │ ├── qrcode.png
│ │ ├── record-add.svg
│ │ ├── record-delete.svg
│ │ ├── record-file-arrow.svg
│ │ ├── record-modify.svg
│ │ ├── record-point.svg
│ │ ├── record-r30-arrow.svg
│ │ ├── return-arrow.svg
│ │ ├── search.svg
│ │ ├── select-N.svg
│ │ ├── select-Y.svg
│ │ ├── selected-memeber-delete.svg
│ │ ├── setting-more-N.svg
│ │ ├── setting-more-Y.svg
│ │ ├── setting-project-info-N.svg
│ │ ├── setting-project-info-Y.svg
│ │ ├── setting-white-ip-N.svg
│ │ ├── setting-white-ip-Y.svg
│ │ ├── smile.svg
│ │ ├── spaceman.png
│ │ ├── spaceman.svg
│ │ ├── suggestion-arrow.svg
│ │ ├── suggestion.svg
│ │ ├── svn-arrow.svg
│ │ ├── switchList.svg
│ │ ├── system-message.svg
│ │ ├── title-lab.svg
│ │ ├── tmbg-white.png
│ │ ├── use-help.svg
│ │ ├── user-bind-N.svg
│ │ ├── user-bind-Y.svg
│ │ ├── user-bind-remove-N.svg
│ │ ├── user-bind-remove-Y.svg
│ │ ├── user-info-N.svg
│ │ ├── user-info-Y.svg
│ │ ├── user-password-N.svg
│ │ ├── user-password-Y.svg
│ │ ├── user-state-N.svg
│ │ ├── user-state-Y.svg
│ │ ├── user-type-gold.svg
│ │ ├── user-type-normal.svg
│ │ ├── user-type-silver.svg
│ │ ├── user-type.svg
│ │ ├── view-type-primary.svg
│ │ ├── view-type-simple.svg
│ │ ├── wechat.svg
│ │ ├── wenai_logo.png
│ │ ├── work-img.svg
│ │ ├── wxmini.jpg
│ │ ├── xiaomi.svg
│ │ ├── y.jpg
│ │ ├── y的副本.jpg
│ │ ├── 关于我们大星球.png
│ │ ├── 关于我们宇航员.png
│ │ └── 关于我们小星球.png
│ └── js
│ │ └── tools.js
├── components
│ ├── BindNew.vue
│ ├── BindOld.vue
│ ├── ChangeOfProjectDialog.vue
│ ├── CommitLogs.vue
│ ├── Detail.vue
│ ├── Forget.vue
│ ├── Header.vue
│ ├── HeaderC.vue
│ ├── HeaderQuickSelectProject.vue
│ ├── Hooks.vue
│ ├── Login.vue
│ ├── Main.vue
│ ├── Members.vue
│ ├── ProjectSetting.vue
│ ├── Projects.vue
│ ├── ProjectsDynamic.vue
│ ├── ProjectsLayout.vue
│ ├── Regist.vue
│ ├── ResetPassword.vue
│ ├── Sidebar.vue
│ ├── Source.vue
│ ├── Terms.vue
│ ├── UserOperateWindow.vue
│ ├── index
│ │ ├── About.vue
│ │ ├── AboutUs.vue
│ │ ├── Buy.vue
│ │ ├── Download.vue
│ │ ├── HeadNavbar.vue
│ │ ├── Index.vue
│ │ ├── IndexContainer.vue
│ │ ├── IndexHeader.vue
│ │ ├── Package.vue
│ │ └── indexContent.vue
│ └── user
│ │ ├── ChangePassword.vue
│ │ ├── UserBind.vue
│ │ ├── UserInfo.vue
│ │ ├── UserSetting.vue
│ │ ├── UserSidebar.vue
│ │ └── UserState.vue
├── main.js
├── router
│ └── index.js
└── store
│ ├── index.js
│ └── mutations.js
├── static
├── .gitkeep
├── css
│ └── github.min.css
├── img
│ ├── bucket28.png
│ ├── icon24_wx_button.png
│ ├── icon32_wx_button.png
│ ├── icon48_wx_logo.png
│ ├── icon64_wx_logo.png
│ └── qrcode.png
├── js
│ ├── cos-js-sdk-v4.js
│ ├── highlight.min.js
│ ├── qrcode.js
│ └── qrcode.min.js
├── test01.html
└── test02.html
└── test
├── test01.html
└── test02.html
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | ["env", {
4 | "modules": false,
5 | "targets": {
6 | "browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
7 | }
8 | }],
9 | "stage-2"
10 | ],
11 | "plugins": ["transform-runtime"],
12 | "env": {
13 | "test": {
14 | "presets": ["env", "stage-2"],
15 | "plugins": ["istanbul"]
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | charset = utf-8
5 | indent_style = space
6 | indent_size = 2
7 | end_of_line = lf
8 | insert_final_newline = true
9 | trim_trailing_whitespace = true
10 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules/
3 | dist/
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 |
8 | # Editor directories and files
9 | .idea
10 | .vscode
11 | *.suo
12 | *.ntvs*
13 | *.njsproj
14 | *.sln
15 |
--------------------------------------------------------------------------------
/.postcssrc.js:
--------------------------------------------------------------------------------
1 | // https://github.com/michael-ciniawsky/postcss-load-config
2 |
3 | module.exports = {
4 | "plugins": {
5 | // to edit target browsers: use "browserslist" field in package.json
6 | "autoprefixer": {}
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # 介绍
2 | SVNBucket 网站前端源码
3 |
4 | 官网地址:https://svnbucket.com
5 |
6 | 我们还有小程序版本,源码请看:https://github.com/gzyunke/svnbucket_mini
7 |
8 | SVNBucket 是一个 SVN 代码托管站,你也可以叫他 SVN 桶或码桶。我们喜欢 SVN 的简单和方便,还有它更好的权限控制。 这里你可以创建无限的私有项目;便捷的进行项目成员管理;分配不同目录的权限;配置钩子,让工作自动化起来。
9 |
10 |
11 | # 运行方法
12 | 使用 vue + elementUI开发。
13 |
14 | 技术栈:vue + vuex + vue - router + axios + elmentUI
15 |
16 | 本地跑:
17 | npm install
18 |
19 | npm run dev
20 |
21 | 发布:
22 | npm run build
23 |
--------------------------------------------------------------------------------
/build/build.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | require('./check-versions')()
3 |
4 | process.env.NODE_ENV = 'production'
5 |
6 | const ora = require('ora')
7 | const rm = require('rimraf')
8 | const path = require('path')
9 | const chalk = require('chalk')
10 | const webpack = require('webpack')
11 | const config = require('../config')
12 | const webpackConfig = require('./webpack.prod.conf')
13 |
14 | const spinner = ora('building for production...')
15 | spinner.start()
16 |
17 | rm(path.join(config.build.assetsRoot, config.build.assetsSubDirectory), err => {
18 | if (err) throw err
19 | webpack(webpackConfig, function (err, stats) {
20 | spinner.stop()
21 | if (err) throw err
22 | process.stdout.write(stats.toString({
23 | colors: true,
24 | modules: false,
25 | children: false,
26 | chunks: false,
27 | chunkModules: false
28 | }) + '\n\n')
29 |
30 | if (stats.hasErrors()) {
31 | console.log(chalk.red(' Build failed with errors.\n'))
32 | process.exit(1)
33 | }
34 |
35 | console.log(chalk.cyan(' Build complete.\n'))
36 | console.log(chalk.yellow(
37 | ' Tip: built files are meant to be served over an HTTP server.\n' +
38 | ' Opening index.html over file:// won\'t work.\n'
39 | ))
40 | })
41 | })
42 |
--------------------------------------------------------------------------------
/build/check-versions.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const chalk = require('chalk')
3 | const semver = require('semver')
4 | const packageConfig = require('../package.json')
5 | const shell = require('shelljs')
6 | function exec (cmd) {
7 | return require('child_process').execSync(cmd).toString().trim()
8 | }
9 |
10 | const versionRequirements = [
11 | {
12 | name: 'node',
13 | currentVersion: semver.clean(process.version),
14 | versionRequirement: packageConfig.engines.node
15 | }
16 | ]
17 |
18 | if (shell.which('npm')) {
19 | versionRequirements.push({
20 | name: 'npm',
21 | currentVersion: exec('npm --version'),
22 | versionRequirement: packageConfig.engines.npm
23 | })
24 | }
25 |
26 | module.exports = function () {
27 | const warnings = []
28 | for (let i = 0; i < versionRequirements.length; i++) {
29 | const mod = versionRequirements[i]
30 | if (!semver.satisfies(mod.currentVersion, mod.versionRequirement)) {
31 | warnings.push(mod.name + ': ' +
32 | chalk.red(mod.currentVersion) + ' should be ' +
33 | chalk.green(mod.versionRequirement)
34 | )
35 | }
36 | }
37 |
38 | if (warnings.length) {
39 | console.log('')
40 | console.log(chalk.yellow('To use this template, you must update following to modules:'))
41 | console.log()
42 | for (let i = 0; i < warnings.length; i++) {
43 | const warning = warnings[i]
44 | console.log(' ' + warning)
45 | }
46 | console.log()
47 | process.exit(1)
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/build/dev-client.js:
--------------------------------------------------------------------------------
1 | /* eslint-disable */
2 | 'use strict'
3 | require('eventsource-polyfill')
4 | var hotClient = require('webpack-hot-middleware/client?noInfo=true&reload=true')
5 |
6 | hotClient.subscribe(function (event) {
7 | if (event.action === 'reload') {
8 | window.location.reload()
9 | }
10 | })
11 |
--------------------------------------------------------------------------------
/build/utils.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const path = require('path')
3 | const config = require('../config')
4 | const ExtractTextPlugin = require('extract-text-webpack-plugin')
5 |
6 | exports.assetsPath = function (_path) {
7 | const assetsSubDirectory = process.env.NODE_ENV === 'production'
8 | ? config.build.assetsSubDirectory
9 | : config.dev.assetsSubDirectory
10 | return path.posix.join(assetsSubDirectory, _path)
11 | }
12 |
13 | exports.cssLoaders = function (options) {
14 | options = options || {}
15 |
16 | const cssLoader = {
17 | loader: 'css-loader',
18 | options: {
19 | minimize: process.env.NODE_ENV === 'production',
20 | sourceMap: options.sourceMap
21 | }
22 | }
23 |
24 | // generate loader string to be used with extract text plugin
25 | function generateLoaders (loader, loaderOptions) {
26 | const loaders = [cssLoader]
27 | if (loader) {
28 | loaders.push({
29 | loader: loader + '-loader',
30 | options: Object.assign({}, loaderOptions, {
31 | sourceMap: options.sourceMap
32 | })
33 | })
34 | }
35 |
36 | // Extract CSS when that option is specified
37 | // (which is the case during production build)
38 | if (options.extract) {
39 | return ExtractTextPlugin.extract({
40 | use: loaders,
41 | fallback: 'vue-style-loader'
42 | })
43 | } else {
44 | return ['vue-style-loader'].concat(loaders)
45 | }
46 | }
47 |
48 | // https://vue-loader.vuejs.org/en/configurations/extract-css.html
49 | return {
50 | css: generateLoaders(),
51 | postcss: generateLoaders(),
52 | less: generateLoaders('less'),
53 | sass: generateLoaders('sass', { indentedSyntax: true }),
54 | scss: generateLoaders('sass'),
55 | stylus: generateLoaders('stylus'),
56 | styl: generateLoaders('stylus')
57 | }
58 | }
59 |
60 | // Generate loaders for standalone style files (outside of .vue)
61 | exports.styleLoaders = function (options) {
62 | const output = []
63 | const loaders = exports.cssLoaders(options)
64 | for (const extension in loaders) {
65 | const loader = loaders[extension]
66 | output.push({
67 | test: new RegExp('\\.' + extension + '$'),
68 | use: loader
69 | })
70 | }
71 | return output
72 | }
73 |
--------------------------------------------------------------------------------
/build/vue-loader.conf.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const utils = require('./utils')
3 | const config = require('../config')
4 | const isProduction = process.env.NODE_ENV === 'production'
5 |
6 | module.exports = {
7 | loaders: utils.cssLoaders({
8 | sourceMap: isProduction
9 | ? config.build.productionSourceMap
10 | : config.dev.cssSourceMap,
11 | extract: isProduction
12 | }),
13 | transformToRequire: {
14 | video: 'src',
15 | source: 'src',
16 | img: 'src',
17 | image: 'xlink:href'
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/build/webpack.base.conf.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const path = require('path')
3 | const utils = require('./utils')
4 | const config = require('../config')
5 | const vueLoaderConfig = require('./vue-loader.conf')
6 |
7 | function resolve (dir) {
8 | return path.join(__dirname, '..', dir)
9 | }
10 |
11 | module.exports = {
12 | entry: {
13 | app: './src/main.js'
14 | },
15 | output: {
16 | path: config.build.assetsRoot,
17 | filename: '[name].js',
18 | publicPath: process.env.NODE_ENV === 'production'
19 | ? config.build.assetsPublicPath
20 | : config.dev.assetsPublicPath
21 | },
22 | resolve: {
23 | extensions: ['.js', '.vue', '.json'],
24 | alias: {
25 | 'vue$': 'vue/dist/vue.esm.js',
26 | '@': resolve('src'),
27 | }
28 | },
29 | module: {
30 | rules: [
31 | {
32 | test: /\.vue$/,
33 | loader: 'vue-loader',
34 | options: vueLoaderConfig
35 | },
36 | {
37 | test: /\.js$/,
38 | loader: 'babel-loader',
39 | include: [resolve('src'), resolve('test')]
40 | },
41 | {
42 | test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
43 | loader: 'url-loader',
44 | options: {
45 | limit: 10000,
46 | name: utils.assetsPath('img/[name].[hash:7].[ext]')
47 | }
48 | },
49 | {
50 | test: /\.(mp4|webm|ogg|mp3|wav|flac|aac)(\?.*)?$/,
51 | loader: 'url-loader',
52 | options: {
53 | limit: 10000,
54 | name: utils.assetsPath('media/[name].[hash:7].[ext]')
55 | }
56 | },
57 | {
58 | test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
59 | loader: 'url-loader',
60 | options: {
61 | limit: 10000,
62 | name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
63 | }
64 | }
65 | ]
66 | }
67 | }
68 |
--------------------------------------------------------------------------------
/build/webpack.dev.conf.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const utils = require('./utils')
3 | const webpack = require('webpack')
4 | const config = require('../config')
5 | const merge = require('webpack-merge')
6 | const baseWebpackConfig = require('./webpack.base.conf')
7 | const HtmlWebpackPlugin = require('html-webpack-plugin')
8 | const FriendlyErrorsPlugin = require('friendly-errors-webpack-plugin')
9 |
10 | // add hot-reload related code to entry chunks
11 | Object.keys(baseWebpackConfig.entry).forEach(function (name) {
12 | baseWebpackConfig.entry[name] = ['./build/dev-client'].concat(baseWebpackConfig.entry[name])
13 | })
14 |
15 | module.exports = merge(baseWebpackConfig, {
16 | module: {
17 | rules: utils.styleLoaders({ sourceMap: config.dev.cssSourceMap })
18 | },
19 | // cheap-module-eval-source-map is faster for development
20 | devtool: '#cheap-module-eval-source-map',
21 | plugins: [
22 | new webpack.DefinePlugin({
23 | 'process.env': config.dev.env
24 | }),
25 | // https://github.com/glenjamin/webpack-hot-middleware#installation--usage
26 | new webpack.HotModuleReplacementPlugin(),
27 | new webpack.NoEmitOnErrorsPlugin(),
28 | // https://github.com/ampedandwired/html-webpack-plugin
29 | new HtmlWebpackPlugin({
30 | filename: 'index.html',
31 | template: 'index.html',
32 | inject: true
33 | }),
34 | new FriendlyErrorsPlugin()
35 | ]
36 | })
37 |
--------------------------------------------------------------------------------
/config/dev.env.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const merge = require('webpack-merge')
3 | const prodEnv = require('./prod.env')
4 |
5 | module.exports = merge(prodEnv, {
6 | NODE_ENV: '"development"'
7 | })
8 |
--------------------------------------------------------------------------------
/config/index.js:
--------------------------------------------------------------------------------
1 |
2 | 'use strict'
3 | // Template version: 1.1.3
4 | // see http://vuejs-templates.github.io/webpack for documentation.
5 |
6 | const path = require('path')
7 |
8 | module.exports = {
9 | build: {
10 | env: require('./prod.env'),
11 | index: path.resolve(__dirname, '../dist/index.html'),
12 | assetsRoot: path.resolve(__dirname, '../dist'),
13 | assetsSubDirectory: 'static',
14 | assetsPublicPath: 'https://res.svnbucket.com/',
15 | productionSourceMap: false,
16 | // Gzip off by default as many popular static hosts such as
17 | // Surge or Netlify already gzip all static assets for you.
18 | // Before setting to `true`, make sure to:
19 | // npm install --save-dev compression-webpack-plugin
20 | productionGzip: true,
21 | productionGzipExtensions: ['js', 'css'],
22 | // Run the build command with an extra argument to
23 | // View the bundle analyzer report after build finishes:
24 | // `npm run build --report`
25 | // Set to `true` or `false` to always turn it on or off
26 | bundleAnalyzerReport: process.env.npm_config_report
27 | },
28 | dev: {
29 | env: require('./dev.env'),
30 | port: process.env.PORT || 8080,
31 | autoOpenBrowser: false,
32 | assetsSubDirectory: 'static',
33 | assetsPublicPath: '/',
34 | proxyTable: {
35 | '/api/':{
36 | target:'https://svnbucket.com',
37 | changeOrigin:true,
38 | },
39 | },
40 | // CSS Sourcemaps off by default because relative paths are "buggy"
41 | // with this option, according to the CSS-Loader README
42 | // (https://github.com/webpack/css-loader#sourcemaps)
43 | // In our experience, they generally work as expected,
44 | // just be aware of this issue when enabling this option.
45 | cssSourceMap: false
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/config/prod.env.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | module.exports = {
3 | NODE_ENV: '"production"'
4 | }
5 |
--------------------------------------------------------------------------------
/doc/svnbucketqrcode.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/doc/svnbucketqrcode.jpg
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | SVNBucket,免费SVN服务器,代码托管,SVN托管,不限私有,不限成员
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "SVNBucket",
3 | "version": "1.0.0",
4 | "description": "A Vue.js project",
5 | "author": "dch ",
6 | "private": true,
7 | "scripts": {
8 | "dev": "node build/dev-server.js",
9 | "start": "npm run dev",
10 | "build": "node build/build.js"
11 | },
12 | "dependencies": {
13 | "axios": "^0.17.1",
14 | "better-scroll": "^1.5.3",
15 | "cropper": "^3.1.3",
16 | "element-ui": "^2.0.8",
17 | "highlight.js": "^9.12.0",
18 | "mavon-editor": "^2.6.17",
19 | "qs": "^6.5.1",
20 | "vue": "^2.5.9",
21 | "vue-axios": "^2.0.2",
22 | "vue-cropper": "^0.4.6",
23 | "vue-infinite-scroll": "^2.0.2",
24 | "vue-router": "^3.0.1",
25 | "vuex": "^3.0.1"
26 | },
27 | "devDependencies": {
28 | "autoprefixer": "^7.1.2",
29 | "babel-core": "^6.22.1",
30 | "babel-loader": "^7.1.1",
31 | "babel-plugin-transform-runtime": "^6.22.0",
32 | "babel-preset-env": "^1.3.2",
33 | "babel-preset-stage-2": "^6.22.0",
34 | "babel-register": "^6.22.0",
35 | "chalk": "^2.0.1",
36 | "compression-webpack-plugin": "^1.0.1",
37 | "connect-history-api-fallback": "^1.5.0",
38 | "copy-webpack-plugin": "^4.2.3",
39 | "css-loader": "^0.28.0",
40 | "eventsource-polyfill": "^0.9.6",
41 | "express": "^4.14.1",
42 | "extract-text-webpack-plugin": "^3.0.0",
43 | "file-loader": "^1.1.4",
44 | "friendly-errors-webpack-plugin": "^1.6.1",
45 | "html-webpack-plugin": "^2.30.1",
46 | "http-proxy-middleware": "^0.17.3",
47 | "node-sass": "^4.7.2",
48 | "opn": "^5.1.0",
49 | "optimize-css-assets-webpack-plugin": "^3.2.0",
50 | "ora": "^1.2.0",
51 | "portfinder": "^1.0.13",
52 | "rimraf": "^2.6.0",
53 | "sass-loader": "^6.0.2",
54 | "semver": "^5.3.0",
55 | "shelljs": "^0.7.6",
56 | "url-loader": "^0.5.8",
57 | "vue-loader": "^13.5.0",
58 | "vue-style-loader": "^3.0.1",
59 | "vue-template-compiler": "^2.5.9",
60 | "webpack": "^3.9.1",
61 | "webpack-bundle-analyzer": "^2.9.1",
62 | "webpack-dev-middleware": "^1.12.2",
63 | "webpack-hot-middleware": "^2.21.0",
64 | "webpack-merge": "^4.1.1"
65 | },
66 | "engines": {
67 | "node": ">= 4.0.0",
68 | "npm": ">= 3.0.0"
69 | },
70 | "browserslist": [
71 | "> 1%",
72 | "last 2 versions",
73 | "not ie <= 8"
74 | ]
75 | }
76 |
--------------------------------------------------------------------------------
/src/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |

8 |
微信扫码,随时随地管理你的项目
9 |
10 |
11 |
12 |
13 |
14 |
37 |
38 |
55 |
56 |
--------------------------------------------------------------------------------
/src/assets/css/main.css:
--------------------------------------------------------------------------------
1 | * {
2 | margin: 0;
3 | padding: 0;
4 | }
5 |
6 | html, body, #app, .wrapper {
7 | width: 100%;
8 | height: 100%;
9 | }
10 |
11 | body {
12 | font-family: "Helvetica Neue", Helvetica, "microsoft yahei", arial, STHeiTi, sans-serif;
13 | }
14 |
15 | a {
16 | text-decoration: none
17 | }
18 |
19 | .pagination {
20 | margin: 20px 0;
21 | text-align: right;
22 | }
23 |
24 | .split-line {
25 | height:1px;
26 | width:100%;
27 | background:#CCCCCC;
28 | overflow:hidden;
29 | }
30 |
31 | ::-webkit-scrollbar {
32 | width: 7px;
33 | height: 16px;
34 | background-color: #F5F5F5;
35 | }
36 | ::-webkit-scrollbar-thumb {
37 | background: #ACACAC;
38 | border-radius: 2px;
39 | border: 1px solid #A3A3A3;
40 | width: 10px;
41 | height: 50px;
42 | }
43 | ::-webkit-scrollbar-thumb:window-inactive {
44 | background-color: #4c97da;
45 | height: 20px;
46 | }
47 |
48 | /* 修改tab底部的线条粗细 */
49 | .main-content-container .el-tabs__nav-wrap:after
50 | {
51 | height: 1px;
52 | }
--------------------------------------------------------------------------------
/src/assets/img/11.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/11.jpg
--------------------------------------------------------------------------------
/src/assets/img/Github.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/QQ.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/SVNBucket.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/SVNBucket.png
--------------------------------------------------------------------------------
/src/assets/img/SVNBucket.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/about-big-start.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/about-big-start.png
--------------------------------------------------------------------------------
/src/assets/img/about-little-start.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/about-little-start.png
--------------------------------------------------------------------------------
/src/assets/img/about-spaceman.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/about-spaceman.png
--------------------------------------------------------------------------------
/src/assets/img/add-folder-arrow.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/add-member-search.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/add-member-selected-gray.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/add-member-selected.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/add-project-N.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/add-project-Y.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/add-project-close.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/add-project-type-Y.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/airship.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/airship.png
--------------------------------------------------------------------------------
/src/assets/img/arrow-right.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/bg.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/bg.jpg
--------------------------------------------------------------------------------
/src/assets/img/big-eddy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/big-eddy.png
--------------------------------------------------------------------------------
/src/assets/img/big-start.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/big-start.png
--------------------------------------------------------------------------------
/src/assets/img/clear-input.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/code-introduce.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/code-introduce.png
--------------------------------------------------------------------------------
/src/assets/img/detail-code-N.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/detail-code-file.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/detail-code-folder.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/detail-code-return.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/detail-code-select.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/detail-project-return.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/detail-wiki-N.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/detail-wiki-Y.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/downDesktop.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/folder-delete.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/folder-introduce.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/folder-introduce.png
--------------------------------------------------------------------------------
/src/assets/img/head-add-Y.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/head-add.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/head-arrow-checked.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/head-hasMessage.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/head-help-Y.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/head-help.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/head-user-arrow-Y.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/head-user-arrow.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/header-arrow.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/header-project-list-N.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/hook-introduce.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/hook-introduce.png
--------------------------------------------------------------------------------
/src/assets/img/hook-mark.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/hook-record-N.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/hook-record-Y.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/house.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/house.png
--------------------------------------------------------------------------------
/src/assets/img/if-nothing.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/little-eddy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/little-eddy.png
--------------------------------------------------------------------------------
/src/assets/img/little-start.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/little-start.png
--------------------------------------------------------------------------------
/src/assets/img/little-start.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/lock.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/log-out.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/logo.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/logo.jpeg
--------------------------------------------------------------------------------
/src/assets/img/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/logo.png
--------------------------------------------------------------------------------
/src/assets/img/lots-little-start.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/lots-little-start.png
--------------------------------------------------------------------------------
/src/assets/img/map.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/map.png
--------------------------------------------------------------------------------
/src/assets/img/member-delete.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/member-introduce.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/member-introduce.png
--------------------------------------------------------------------------------
/src/assets/img/member-modify-N.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/member-modify-Y.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/message-N.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/message-Y.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/message-read.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/message-unread.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/p-dynamic-hl.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/p-dynamic.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/p-project-search.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/p-projects-list-hl.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/p-projects-list.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/passcode.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/passcode.jpg
--------------------------------------------------------------------------------
/src/assets/img/phone.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/project-creat.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/project-creat.png
--------------------------------------------------------------------------------
/src/assets/img/project-introduce.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/project-introduce.png
--------------------------------------------------------------------------------
/src/assets/img/project-search.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/project-selected.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/project-type-select.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/qrcode.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/qrcode.png
--------------------------------------------------------------------------------
/src/assets/img/record-add.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/record-delete.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/record-file-arrow.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/record-modify.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/record-point.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/record-r30-arrow.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/return-arrow.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/search.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/select-N.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/select-Y.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/selected-memeber-delete.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/setting-project-info-N.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/setting-project-info-Y.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/smile.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/assets/img/spaceman.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/spaceman.png
--------------------------------------------------------------------------------
/src/assets/img/suggestion-arrow.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/svn-arrow.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/switchList.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/assets/img/title-lab.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/tmbg-white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/tmbg-white.png
--------------------------------------------------------------------------------
/src/assets/img/use-help.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/user-bind-N.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/user-bind-Y.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/user-bind-remove-N.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/user-bind-remove-Y.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/user-type-normal.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/user-type.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/view-type-primary.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/assets/img/view-type-simple.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/assets/img/wechat.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/wenai_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/wenai_logo.png
--------------------------------------------------------------------------------
/src/assets/img/wxmini.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/wxmini.jpg
--------------------------------------------------------------------------------
/src/assets/img/xiaomi.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/img/y.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/y.jpg
--------------------------------------------------------------------------------
/src/assets/img/y的副本.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/y的副本.jpg
--------------------------------------------------------------------------------
/src/assets/img/关于我们大星球.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/关于我们大星球.png
--------------------------------------------------------------------------------
/src/assets/img/关于我们宇航员.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/关于我们宇航员.png
--------------------------------------------------------------------------------
/src/assets/img/关于我们小星球.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/src/assets/img/关于我们小星球.png
--------------------------------------------------------------------------------
/src/components/ChangeOfProjectDialog.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
{{changeFiles.length}}个文件
6 | ( {{num.updateNum}} 修改 / {{num.newNum}} 新增 / {{num.deleteNum}} 删除 )
7 |
8 |
9 |

10 |

11 |

12 |
{{file[1]}}
13 |
14 |
15 |
16 |
17 |
18 |
{{diffContent}}
19 |
20 |
21 |
22 |
23 |
24 |
35 |
36 |
--------------------------------------------------------------------------------
/src/components/Detail.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
70 |
71 |
--------------------------------------------------------------------------------
/src/components/Main.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
34 |
35 |
37 |
--------------------------------------------------------------------------------
/src/components/ProjectsLayout.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
9 |
11 | 项目列表
12 |
13 |
14 |
15 |
16 |
18 | 项目动态
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
46 |
47 |
--------------------------------------------------------------------------------
/src/components/index/About.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |

5 |
6 |

7 |
8 |

9 |
10 |
我们的使命是让开发更简单。
11 |
12 |
13 |
14 |
关于我们
15 |
16 |
17 | SVNBucket 由广州云科信息科技有限公司开发和运营
18 | 广州云科,致力于为企业和个人不断提供让工作生活更便捷的软件。
19 | 公司成员来自国内知名IT企业的核心开发团队、多年游戏开发经验
20 | 曾开发过用户量过亿的大型手游,技术实力有保障。
21 |
22 |
23 |
24 |
25 |
45 |
46 |
47 |
48 |
53 |
54 |
61 |
--------------------------------------------------------------------------------
/src/components/index/Download.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
让协作走出办公室
4 |
5 | 现在你不仅可以在网页端登录,也可以通过智能手机进行团队协作。
6 |
7 |
8 |
9 |
10 | 我们同样保持最快的更新,让你无论何时何地都可以玩完整的使用SVNBuckets。
11 |
12 |
13 |
14 |
15 |
桌面版
16 |

17 |
21 |
22 |
23 |
28 |
29 |
30 |
android版
31 |

32 |
直接下载
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/src/components/index/IndexContainer.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
21 |
22 |
25 |
--------------------------------------------------------------------------------
/src/components/user/ChangePassword.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | 忘记密码
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 | 保存修改
17 |
18 |
19 |
20 |
21 |
22 |
23 |
63 |
64 |
67 |
--------------------------------------------------------------------------------
/src/components/user/UserBind.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 帐号绑定
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 | {{scope.row.name}}
14 |
15 |
16 |
17 |
18 | 绑定
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
48 |
49 |
52 |
--------------------------------------------------------------------------------
/src/components/user/UserSidebar.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |

5 |
6 | 熬大汪
7 | atsoar@qq.com
8 |
9 |
10 |
11 |
12 |
13 | -
15 |
16 | 个人信息
17 |
18 |
19 |
20 |
21 | -
22 |
23 | 账号状态
24 |
25 |
26 |
27 |
28 | -
29 |
30 | 账号绑定
31 |
32 |
33 |
34 |
35 | -
36 |
37 | 修改密码
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
58 |
59 |
62 |
--------------------------------------------------------------------------------
/src/main.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import App from './App'
3 | import store from './store'
4 | import router from './router'
5 | import axios from 'axios'
6 | import infiniteScroll from 'vue-infinite-scroll'
7 | import ElementUI from 'element-ui';
8 | import 'element-ui/lib/theme-chalk/index.css'; // 默认主题
9 | import VueCropper from 'vue-cropper'
10 | import mavonEditor from 'mavon-editor'
11 | import 'mavon-editor/dist/css/index.css'
12 |
13 | axios.defaults.timeout = 15000;
14 | axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8';
15 | axios.defaults.headers.common['Authorization'] = window.localStorage.getItem('svnbucketToken');
16 |
17 | Vue.directive('highlight', function (el) {
18 | let blocks = el.querySelectorAll('pre code');
19 | blocks.forEach((block)=>{
20 | hljs.highlightBlock(block)
21 | })
22 | })
23 |
24 | Vue.use(ElementUI);
25 | Vue.use(VueCropper);
26 | Vue.use(infiniteScroll)
27 | Vue.use(mavonEditor)
28 | Vue.prototype.$axios = axios;
29 | let vm = new Vue({
30 | router,
31 | store,
32 | render: h => h(App)
33 | }).$mount('#app');
34 |
35 | let loading = null;
36 | let isNeedShowLoading = true;
37 | // 发送请求前的处理
38 | axios.interceptors.request.use((config) =>
39 | {
40 | isNeedShowLoading = true;
41 | window.setTimeout(function ()
42 | {
43 | if (isNeedShowLoading)
44 | {
45 | loading = vm.$loading({lock: true, fullscreen: true, text: '请求中...', background: 'rgba(0, 0, 0, 0.7)'});
46 | window.setTimeout(function ()
47 | {
48 | if (loading)
49 | {
50 | loading.close();
51 | loading = null
52 | }
53 | }, 10000);
54 | }
55 | }, 500);
56 |
57 | var token = window.localStorage.getItem('svnbucketToken');
58 | config.headers.common['Authorization'] = token
59 | return config;
60 | },
61 | (error) =>
62 | {
63 | console.error("错误的传参");
64 | return Promise.reject(error);
65 | });
66 |
67 | //返回状态判断
68 | axios.interceptors.response.use((res) =>
69 | {
70 | isNeedShowLoading = false;
71 | if (loading)
72 | {
73 | loading.close();
74 | loading = null
75 | }
76 |
77 | if (res.data.isLogin === false)
78 | {
79 | vm.$router.replace('/login')
80 | return Promise.reject(res);
81 | }
82 | else if (res.data.success === false)
83 | {
84 | console.log('failed:' + res.data.msg);
85 | vm.$message.error(res.data.msg);
86 | return Promise.reject(res);
87 | }
88 | return res;
89 | },
90 | (error) =>
91 | {
92 | console.error("网络异常");
93 | return Promise.reject(error);
94 | });
--------------------------------------------------------------------------------
/src/store/index.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue';
2 | import Vuex from 'vuex';
3 | import {state, mutations} from './mutations'
4 |
5 | Vue.use(Vuex)
6 |
7 | export default new Vuex.Store({
8 | state,
9 | mutations,
10 | })
11 |
--------------------------------------------------------------------------------
/static/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/static/.gitkeep
--------------------------------------------------------------------------------
/static/css/github.min.css:
--------------------------------------------------------------------------------
1 | .hljs{display:block;padding:.5em;color:#333;background:#f8f8f8}.hljs-comment,.hljs-template_comment,.diff .hljs-header,.hljs-javadoc{color:#998;font-style:italic}.hljs-keyword,.css .rule .hljs-keyword,.hljs-winutils,.javascript .hljs-title,.nginx .hljs-title,.hljs-subst,.hljs-request,.hljs-status{color:#333;font-weight:bold}.hljs-number,.hljs-hexcolor,.ruby .hljs-constant{color:#099}.hljs-string,.hljs-tag .hljs-value,.hljs-phpdoc,.tex .hljs-formula{color:#d14}.hljs-title,.hljs-id,.coffeescript .hljs-params,.scss .hljs-preprocessor{color:#900;font-weight:bold}.javascript .hljs-title,.lisp .hljs-title,.clojure .hljs-title,.hljs-subst{font-weight:normal}.hljs-class .hljs-title,.haskell .hljs-type,.vhdl .hljs-literal,.tex .hljs-command{color:#458;font-weight:bold}.hljs-tag,.hljs-tag .hljs-title,.hljs-rules .hljs-property,.django .hljs-tag .hljs-keyword{color:#000080;font-weight:normal}.hljs-attribute,.hljs-variable,.lisp .hljs-body{color:#008080}.hljs-regexp{color:#009926}.hljs-symbol,.ruby .hljs-symbol .hljs-string,.lisp .hljs-keyword,.tex .hljs-special,.hljs-prompt{color:#990073}.hljs-built_in,.lisp .hljs-title,.clojure .hljs-built_in{color:#0086b3}.hljs-preprocessor,.hljs-pragma,.hljs-pi,.hljs-doctype,.hljs-shebang,.hljs-cdata{color:#999;font-weight:bold}.hljs-deletion{background:#fdd}.hljs-addition{background:#dfd}.diff .hljs-change{background:#0086b3}.hljs-chunk{color:#aaa}
--------------------------------------------------------------------------------
/static/img/bucket28.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/static/img/bucket28.png
--------------------------------------------------------------------------------
/static/img/icon24_wx_button.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/static/img/icon24_wx_button.png
--------------------------------------------------------------------------------
/static/img/icon32_wx_button.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/static/img/icon32_wx_button.png
--------------------------------------------------------------------------------
/static/img/icon48_wx_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/static/img/icon48_wx_logo.png
--------------------------------------------------------------------------------
/static/img/icon64_wx_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/static/img/icon64_wx_logo.png
--------------------------------------------------------------------------------
/static/img/qrcode.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/static/img/qrcode.png
--------------------------------------------------------------------------------
/static/test01.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | new document
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 | a
14 | b
15 | c
16 | d
17 | e
18 | f
19 | g
20 | h
21 | i
22 | j
23 | k
24 | l
25 |
26 |
37 |
38 |
--------------------------------------------------------------------------------
/static/test02.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/static/test02.html
--------------------------------------------------------------------------------
/test/test01.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | new document
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
19 |
20 |
--------------------------------------------------------------------------------
/test/test02.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gzyunke/svnbucket/175669614ac040291e3bb3cde7eb3f61e211a7e6/test/test02.html
--------------------------------------------------------------------------------