Blog posts

failed to extract shortcode: template for shortcode "alert" not found

Hugo Error failed to extract shortcode: template for shortcode "alert" not found 解決方法 git submodule update --init --recursive Test hugo server --watch

ESLint couldn’t find the plugin (when install dependencies using yarn)

今日嘗試用 command line (CLI) 執行 ESLint 時出現了以下的錯誤信息 # eslint command eslint ./src Error: Cannot find module 'eslint-config-airbnb' 仔細看他其實是在找**npm install** 的 module 的 folder “c:\user\chi\AppData\Roaming\npm\node_modules” 但我是用 yarn install的所以 是使用錯了folder **解決方法**十分簡單 我們只要使用 yarn 執行便可 yarn eslint ./src Hope you find it useful

Clear node-modules

我們可以使用以下指令到 clear Yarn / NPM 的 cache # yarn yarn cache clean # npm npm cache clean # remove node_modules folder rm -rf node_modules/ Hope you find it useful

Git Error Unlink of File failed. Should I try again?

久不久我使用的 Git 便會出現以下問題 “Unlink of file. ‘ file path and name’ failed. Should I try again? (y/n)“ 很多時候按了 “Y” 也是說 file locked … Should I try again? 解釋方法: 我們只需要執行 git gc command 便可 git gc Hope you find it useful

Update WordPress Inside Docker Container Required FTP Access

今日Update WordPress 既時候出現了 輸入FTP資料的畫面 To perform the requested action, WordPress needs to access your web server. Please enter your FTP credentials to proceed. If you do not remember your credentials, you should contact your web host. 原因是因為有些wordpress 的資料夾沒有 權限去access 解決方法 我們只需要把這個資料夾的ownership 設定和這個container一樣便可 e.g. sudo chown -R www-data:www-data wordpress Hope you find it useful

VSCode config trim trailing space when saving file

如果有用開source control, 做code view 或 compare files 時 whitespace / Tab 會造成一些不必要既麻煩 很多IDE 都有一些設定或 plugin 可以在你儲存檔案時除去尾隨空格 在Visual Studio Code 有一些很好用的 settings 大家可在Settings 上搜尋 “files.trimTrailingWhitespace“ 之後便可以啟用這個設定 Hope you find it useful

Linux updated folder and subfolder’s ownership

只要把這個folder的ownership 轉為 www-data 便可 我們可以使用 sudo chown user:usergroup folder/* 今日發現自從把wordpress 轉了用docker host 之後便不能 upload file 原因是我把之wordpress site 的檔案從 FTP upload 到新server 的 uploads folder 的ownership 是我FTP 的user名 而不是 run wordpress 的www-data 解決放法 sudo chown www-data:www-data uploads/* Hope you find it useful

C# Distinct List of Object

今日在Code Review 同事的Code 時候發現了一個有趣的寫法 他想做的是 Return 一個Distinct 左既 List Of Object 好直接既想法是使用 Distinct List.Distinct(); 之後發現Distinct 是不能 Distinct Object的 同事的寫法是用了 List 加 GroupBy 和Select First() List.GrounBy(x=> x.key).Select(x => x.First()) 之後發現.. 原來我們可以使用 GroupBy 加 First 來做到 Distinct Object的效果 以下是我的 Code Sample void Main() { var list = new List<Example(); list.Add(new Example() {Id=1, Name="Example 1", Comment="Comment 1" }); list.Add(new Example() {Id=1, Name="Example 1", Comment="Comment 1" }); list.Add(new Example() {Id=1, Name="ExamplE 1", Comment="Comment 2"

EF Core with MySQL Specified key was too long; max key length is 3072 bytes

今日嘗試使用 EF Core with MySQL 時出現了以下的錯誤信息: MySql.Data.MySqlClient.MySqlException HResult=0x80004005 Message=Specified key was too long; max key length is 3072 bytes Source=MySql.Data StackTrace: at MySql.Data.MySqlClient.MySqlStream.ReadPacket() at MySql.Data.MySqlClient.NativeDriver.GetResult(Int32& affectedRow, Int64& insertedId) at MySql.Data.MySqlClient.Driver.NextResult(Int32 statementId, Boolean force) at MySql.Data.MySqlClient.MySqlDataReader.NextResult() at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior behavior) at MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuery() at Microsoft.EntityFrameworkCore.Storage.Internal.RelationalCommand.Execute(IRelationalConnection connection, DbCommandMethod executeMethod, IReadOnlyDictionary<strong2 parameterValues) at Microsoft.EntityFrameworkCore.Storage.Internal.RelationalCommand.ExecuteNonQuery(IRelationalConnection connection, IReadOnlyDictionary</strong2 parameterValues) at Microsoft.EntityFrameworkCore.Migrations.MigrationCommand.ExecuteNonQuery(IRelationalConnection connection, IReadOnlyDictionary<strong2 parameterValues) at Microsoft.EntityFrameworkCore.Migrations.Internal.MigrationCommandExecutor.ExecuteNonQuery(IEnumerable</strong1 migrationCommands, IRelationalConnection connection) at Microsoft.EntityFrameworkCore.Storage.RelationalDatabaseCreator.CreateTables() at Microsoft.EntityFrameworkCore.Storage.RelationalDatabaseCreator.EnsureCreated() at Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade.EnsureCreated() at epm.

Git Check which branch contain specific commit

今日公司個Production project 有一個 Bug 但係在 Staging 和 UAT environment 都 replicate 唔到呢個問題.. 之後便用Git Blame 去檢查一下有什麼 code change 再看看是那一個 commit 做了code change 找到commit 之後 便要嘗試去看看這個commit merge 了去那些 branch 解決方法 我們可以使用以下 git command git branch –contains $COMMIT_ID e.g. git branch –contains 7df12c5 Hope you find it useful