Skip to content
This repository was archived by the owner on Aug 8, 2022. It is now read-only.

Commit a17bf3c

Browse files
authored
feat: sync script (#728)
* feat: sync script * update * update
1 parent 88f5c80 commit a17bf3c

File tree

3 files changed

+77
-1
lines changed

3 files changed

+77
-1
lines changed

package.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,18 @@
11
{
22
"devDependencies": {
33
"@vuepress/plugin-pwa": "^1.5.4",
4-
"sass": "^1.32.0",
4+
"open": "^8.2.1",
55
"patch-package": "^6.2.2",
6+
"sass": "^1.32.0",
67
"sass-loader": "^8.0.2",
8+
"simple-git": "^2.45.1",
79
"vuepress": "^1.5.4"
810
},
911
"scripts": {
1012
"dev": "yarn serve",
1113
"serve": "vuepress dev src",
1214
"build": "vuepress build src",
15+
"sync": "node scripts/sync.js",
1316
"postinstall": "patch-package"
1417
},
1518
"dependencies": {

scripts/sync.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
/**
2+
* usage: npm run sync
3+
*
4+
* find the latest synced commit hash from local git by `sync #hash` pattern,
5+
* and open a browser tab of github.com/vuejs/docs,
6+
* with the compare between this hash and latest master branch.
7+
* save a little bit time between finding it manually.
8+
*
9+
* https://github.com/vuejs/docs-next-zh-cn/pull/728
10+
*/
11+
const git = require('simple-git')();
12+
const open = require('open');
13+
14+
(async () => {
15+
const history = await git.log()
16+
const latestSync = history.all.find(v => /^sync #\w{7}\s.+$/i.test(v.message)).message
17+
const latestSyncHash = latestSync.match(/#(\w+)\s/)[1]
18+
open(`https://github.com/vuejs/docs/compare/${latestSyncHash}...master`)
19+
})()

yarn.lock

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1030,6 +1030,18 @@
10301030
dependencies:
10311031
"@hapi/hoek" "^8.3.0"
10321032

1033+
"@kwsites/file-exists@^1.1.1":
1034+
version "1.1.1"
1035+
resolved "https://registry.yarnpkg.com/@kwsites/file-exists/-/file-exists-1.1.1.tgz#ad1efcac13e1987d8dbaf235ef3be5b0d96faa99"
1036+
integrity sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw==
1037+
dependencies:
1038+
debug "^4.1.1"
1039+
1040+
"@kwsites/promise-deferred@^1.1.1":
1041+
version "1.1.1"
1042+
resolved "https://registry.yarnpkg.com/@kwsites/promise-deferred/-/promise-deferred-1.1.1.tgz#8ace5259254426ccef57f3175bc64ed7095ed919"
1043+
integrity sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw==
1044+
10331045
"@mrmlnc/readdir-enhanced@^2.2.1":
10341046
version "2.2.1"
10351047
resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde"
@@ -2976,6 +2988,13 @@ debug@^4.1.0, debug@^4.1.1:
29762988
dependencies:
29772989
ms "2.1.2"
29782990

2991+
debug@^4.3.1:
2992+
version "4.3.2"
2993+
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b"
2994+
integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==
2995+
dependencies:
2996+
ms "2.1.2"
2997+
29792998
debug@~3.1.0:
29802999
version "3.1.0"
29813000
resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261"
@@ -3035,6 +3054,11 @@ defer-to-connect@^1.0.1:
30353054
resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591"
30363055
integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==
30373056

3057+
define-lazy-prop@^2.0.0:
3058+
version "2.0.0"
3059+
resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f"
3060+
integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==
3061+
30383062
define-properties@^1.1.2, define-properties@^1.1.3:
30393063
version "1.1.3"
30403064
resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1"
@@ -4541,6 +4565,11 @@ is-directory@^0.3.1:
45414565
resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1"
45424566
integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=
45434567

4568+
is-docker@^2.0.0, is-docker@^2.1.1:
4569+
version "2.2.1"
4570+
resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa"
4571+
integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==
4572+
45444573
is-extendable@^0.1.0, is-extendable@^0.1.1:
45454574
version "0.1.1"
45464575
resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89"
@@ -4709,6 +4738,13 @@ is-wsl@^1.1.0:
47094738
resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d"
47104739
integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=
47114740

4741+
is-wsl@^2.2.0:
4742+
version "2.2.0"
4743+
resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271"
4744+
integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==
4745+
dependencies:
4746+
is-docker "^2.0.0"
4747+
47124748
is-yarn-global@^0.3.0:
47134749
version "0.3.0"
47144750
resolved "https://registry.yarnpkg.com/is-yarn-global/-/is-yarn-global-0.3.0.tgz#d502d3382590ea3004893746754c89139973e232"
@@ -5620,6 +5656,15 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0:
56205656
dependencies:
56215657
wrappy "1"
56225658

5659+
open@^8.2.1:
5660+
version "8.2.1"
5661+
resolved "https://registry.yarnpkg.com/open/-/open-8.2.1.tgz#82de42da0ccbf429bc12d099dad2e0975e14e8af"
5662+
integrity sha512-rXILpcQlkF/QuFez2BJDf3GsqpjGKbkUUToAIGo9A0Q6ZkoSGogZJulrUdwRkrAsoQvoZsrjCYt8+zblOk7JQQ==
5663+
dependencies:
5664+
define-lazy-prop "^2.0.0"
5665+
is-docker "^2.1.1"
5666+
is-wsl "^2.2.0"
5667+
56235668
opencollective-postinstall@^2.0.2:
56245669
version "2.0.3"
56255670
resolved "https://registry.yarnpkg.com/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz#7a0fff978f6dbfa4d006238fbac98ed4198c3259"
@@ -6963,6 +7008,15 @@ signal-exit@^3.0.0, signal-exit@^3.0.2:
69637008
resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c"
69647009
integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==
69657010

7011+
simple-git@^2.45.1:
7012+
version "2.45.1"
7013+
resolved "https://registry.yarnpkg.com/simple-git/-/simple-git-2.45.1.tgz#27d26ae59f734ffd7e1dea16a1ee3b309d68f5ef"
7014+
integrity sha512-NmEoThiLTJxl26WNtZxtJTue18ReTcSrf3so5vJG/O8KY9uMxH+yAhXV/DElBJyOYZrrBbVsH8JOFxgENdc9Xg==
7015+
dependencies:
7016+
"@kwsites/file-exists" "^1.1.1"
7017+
"@kwsites/promise-deferred" "^1.1.1"
7018+
debug "^4.3.1"
7019+
69667020
simple-swizzle@^0.2.2:
69677021
version "0.2.2"
69687022
resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a"

0 commit comments

Comments
 (0)