2015年9月25日 星期五

Git - 重新命名 branch

重新命名
$git branch -m OLD_NAME NEW_NAME

上傳新名稱 branch 到遠端
$git push origin NEW_NAME:NEW_NAME

刪除遠端的舊名稱 branch
$git push origin --delete OLD_NAME

2015年9月24日 星期四

Git - 同步 github 到 gitlab

下載 repository 到本地端
$git clone https://github.com/username/repo-name.git
進入 repository 目錄
$cd repo-name
增加遠端 repository
$git remote add gitlab https://gitlab.com/username/repo-name.git
上傳 commit
$git push -f --tags refs/heads/*:refs/heads/*
 

2015年9月15日 星期二

Linux - vim 使用技巧

替換檔案中的 tab 為 whitespace

如果有設定好 .vimrc,進入 vim 的命令模式輸入
:retab

搜尋並取代 

進入命令模式,輸入
:1,$s/hello/hi/g
將字串 hello 換成 hi。1,$表示從頭到尾。

2015年9月6日 星期日

Git - rebase 還原版本

如果要還原到前一個版本
$git rebase -i HEAD~2
如果要還原到前三個版本
$git rebase -i HEAD~4

接著,刪除不要的版本 (整行 pick),
最後,送交到遠端
$git push origin +master



2015年9月2日 星期三

Git - branch

下載遠端 branch
git clone -b BRANCH_NAME REMOTE_GIT_REPO_URL


下載遠端 branch 至本地指定目錄
git clone REMOTE_GIT_REPO_URL -b BRANCH_NAME DIR


新增本地 branch
git checkout -b BRANCH_NAME


上傳至遠端 branch
git push origin BRANCH_NAME

Git - submodule 的應用

下載有 submodule 的 git repository

git clone --recursive REMOTE_GIT_REPO_URL


加入其他 git repository 作為 submodule

git submodule add REMOTE_GIT_REPO_URL SUBMODULE_NAME



加入其他 git repository 且指定 branch 作為 submodule

git submodule add -b BRANCH_NAME REMOTE_GIT_REPO_URL SUBMODULE_NAME


移除 submodule

git rm SUBMODULE_NAME
rm -R SUBMODULE_DIR


上傳 submodule 至遠端

git checkout BRANCH_NAME
git add -A .
git commit -m "UPDATE_MESSAGE"
git push origin BRANCH_NAME


查詢 submodule 資訊

git submodule