發表文章

目前顯示的是 10月, 2020的文章

如果想架個自有的私人的 git 伺服器

開發程式的過程就是一直摸索撞牆和一直撞牆和想辦法爬牆的過程,期待或許有一天可以不用撞牆,甚至直接能把穿牆的過程。現在這個過程中,免不了要包括架個自有的、私人的 git 伺服器,最好的狀況是這個牆不用自已撞,MMMMM,一直以來試圖繞過這牆,如果你看到這牆了,mmmm 我撞過了,正要爬過,好在,畢竟躲得夠久了,很多人爬過了,還早就知道這不是牆,是個好城堡。 git 的免費服務通常必需公開工作成果給大眾取用的,然而有些工作可以見光,見了光,別人就看見你                                               的工作成果,有些工作不能見光,才做到一半的工作見了光,就得換工作了。這次說的未必是不能見光,有時是不想見光,所以想要架個自有的、私人的 git 伺服器(own private git server)。 工作環境:   windows 8+   openssh server   gogs   git/git-bash   putty     sourcetree   MySQL或是SQLite   官網有說要架個私有 git 伺服器,最重要的就是在伺服器你要存檔的地方 $git --bare init ,然後就是透過開放網頁或是 ssh 來存專案的檔案,這樣當然就涉及網頁和 ssh 伺服器,如果你剛好又想不用 linux ,想在 windows 下完成這些工作,MMMMMMMM 話說 windows 10 之後,終於把 openssh server 放進應用程式裏面,讓你新增選用功能,然後再搞好 git server,之後再管理一下憑證、把使用者的權限開一下,接著搞清楚 git CLI ...

Windows 10 之前的作業系統安裝 openssh server

希望之後能發現更簡單的解法,先用這個了,Windows 10 可以在程式裏面新增這個服務,就不需要這個了。 工作環境:   Windows 8   openssh 8.1.0.0 p1 beta 參考這篇內容 或是中文附圖的 : 下載 OpenSSH server 解壓縮到 c:\Program Files\OpenSSH 的資料夾下 以管理者身份 以管理者身份 以管理者身份 開啟命令終端執行以下指令 powershell.exe -ExecutionPolicy Bypass -File install-sshd.ps1 如果出現權限不足之類的紅字,表示沒有用管理員身份/權限執行 在 Powershell 下執行以下指令以註冊服務到作業系統 New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH SSH Server' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22 -Program "C:\Program Files\OpenSSH\sshd.exe"  到防火牆下設定 OpenSSH 的權限,允許使用 port22 連入本機 到服務中將 OpenSSH 啟用 使用 putty 之類的程式試著連到本機 完成! 收工!

laravel 既有資料的 seed 產生器

laravel 的 migrate 工具可以讓我們產生相應的資料庫,讓使用者輸入資料到資料庫中。 有別於透過 sql 檔案來匯入資料庫中的資料,laravel 提供了 (db:)seed 讓我們把資料匯入資料庫中。 那要怎麼產生 seed 要用的內容呢? 這裏指的是要把預設的、指定的資料內容填入資料庫,而不是用 factory 來產生隨機資料的情境。 既然有 seed 指令就是可以手寫相關的檔案,就像是 https://laravel.tw/docs/5.2/seeding 提到的,建個 seed 檔案來填相應欄位的資料,再用 DatabaseSeeder.php 來呼叫所有的 seed 檔,或是透過指令 php artisan db:seed --class=UserTableSeeder 來執行指定的 seed 檔。 想當然爾「不想手動」,那就來找個工具。 工作環境:   laravel 7.*   iseed 2.6.4 https://github.com/orangehill/iseed   安裝 iseed: $composer require orangehill/iseed 產生 seed 檔/匯出資料庫中的資料: $php artisan iseed my_table,another_table,users database/seeds 下會生成相對應的 seed 檔案 匯入 users 資料庫中的資料: $php artisan db:seed --class=UserTableSeeder 或是匯入所有的資料: $php artisan db:seed 如果安裝時出現記憶體不足 Fatal error: Allowed memory size of ########## bytes exhausted 請見這裏

composer 安裝套件出現記憶體不足的情形排除

在很少見的情形下,用 composer 安裝套件時出現記憶體不足的狀況,安全性的考量在此先略過不談,單就處理安裝的角度來處理排除的工作。 症狀: Fatal error: Allowed memory size of ########## bytes exhausted 工作環境:   php 7.3   composer require iseed   確認記憶體設定值:     $php -r "echo ini_get('memory_limit').PHP_EOL;" 試著在這個工作階段略過記憶體設定值的限制:     $composer COMPOSER_MEMORY_LIMIT=-1 require orangehill/iseed    (我失敗了)     $php -d memory_limit=-1 composer.phar require orangehill/iseed    (我失敗了)     $php composer.phar COMPOSER_MEMORY_LIMIT=-1 require orangehill/iseed (我失敗了)     $COMPOSER_MEMORY_LIMIT=-1 composer require orangehill/iseed (我失敗了)          $set COMPOSER_MEMORY_LIMIT=-1     $composer require orangehill/iseed     終於成功!      收工!

phpMyAdmin除錯和一些操作的問題

工作環境: phpMyAdmin 4.9.1 出現: fix Field :group:OpenDocument/OpenOffice 試算表 has no type 解決方法: 參考文件:https://github.com/williamdes/phpmyadmintest/commit/47971806316304f650ca1b3742e2a53801d2a794 找這個檔案 libraries/classes/Config/Form.php 在 readTypes 下方新增一段     protected function cleanGroupPaths(array $form): array     {         foreach($form as &$name) {             if (mb_strpos((string) $name, ':group:') === 0) {                 $name = str_replace('/', '-', $name);             }         }         return $form;     }      以及下方的 readTypes 改成     public function loadForm($formName, array $form)     {    ...