Git 同步對齊 fork 專案跟原始專案的 commit

使用fork的方式進行開發

開發到一個段落時,如果直接推送自己的東西進master,未來要合併回原始專案的時候,很有機會遇到衝突(可能錯過了一些commit導致);所以先跟原始專案做”對齊”的動作,再推送自己開發的東西會比較保險

情境

  • bbb從aaa/projectfork出來bbb/project進行開發

  • aaa/project的master分支有10個commit。

  • 本地的master分支有5個原始commit,3個開發產生的commit。

  • bbb想要把本地的master分支,跟aaa/project的commit保持一致,再把自己開發的東西一起推送到bbb/project

步驟

  1. 設定原始專案為上游分支

    1
    git remote add upstream aaa/project.git
  2. 抓取原始專案的異動

    1
    git fetch upstream
  3. 切到master分支

    1
    git checkout master
  4. 把upstream/master合併到master分支

    1
    git rebase upstream/master

    如果有異動還沒推,先stash起來,做完rebase後再取出

  5. 推送

    1
    git push

參考資料

Git中同步主干的代码到fork分支里
【狀況題】怎麼跟上當初 fork 專案的進度?
Stash(暫存)

JS 比對字串的幾個方法

在處理要允許的host時,用到了幾個方法做了筆記,以下也會提到一些要注意的地方。

直接用 ===

1
2
3
4
5
let allowHost = 'google.com'
if(windows.location.host === allowHost)
{
//....
}

windows.location.host要跟條件「絕對一致」的話,直接用===來判斷吧;但是如果不是…那就繼續看下去吧。

繼續閱讀

我是如何轉職前端工程師(泰山前端網頁開發技術)

之前的文章有提到,為什麼我不繼續做聖騎士PM

從上份工作離職後、參加職訓前,也有投工程師的相關工作,但實在沒有技術力,面試都被洗臉,也不知道從何開始精進。

後來經由三重就業服務中心推介,報名泰山職業訓練場的前端網頁開發技術(青年專班),上了半年的課順利拿到結訓證書。

繼續閱讀

CSS 選擇器權重 Specificity

CSS 選擇器是如何判斷要套用哪個樣式?

常會遇到寫了樣式卻沒有被套用,而樣式沒被套用有兩個可能

  1. 沒有選對元素
  2. 選對了元素,但蓋不掉之前的樣式
    以下就來講 選對了元素,但蓋不掉之前的樣式
繼續閱讀