八、Git命令篇:程式碼打包及程式碼釋出
程式碼打包及程式碼釋出
一、遠端分支與本地分支關聯
遠端分支,免輸 [origin master]、[origin dev] 之類,直接使用命令 git pull、git push
之前在講分支的時候忘記了這條,現在補上,以本地的dev分支和遠端的dev分支為例講解:
git branch --set-upstream-to=origin/dev dev 使用較新版本
git branch --set-upstream origin/dev dev 早期版本
或 修改.git/config 增加一下對應關係
之後使用git pull下載程式碼,使用git push推送程式碼後面都不用加相應的遠端分支名稱。
二、合併特定提交到master分支
$ git checkout -b newbranch 62ecb3 從有新提交的分支上基於某特定commit基礎上建立一個新分支 $ git rebase --onto master 76cada^ 選擇特定要合併的commit到主分支
三、程式碼釋出
方式一:命令打包(適用所有平臺 )
$ git archive -o ../publish_packet/pub_2017-12-25.zip HEAD $ git diff –name-only 4f88edfcc0872a1aed6186fd53df7751bd69bfe6^
方式二:視覺化 TortoiseGit (適用windows )
專案目錄滑鼠右鍵選單 TortoiseGit -> Show log -> 選中要打包的更新版本 滑鼠右鍵->對比檔案 -> 全選檔案 右鍵Export -> 選擇路徑儲存
方式三:SourceTree視覺化 (適用windows & mac )
- SourceTree配置自定義匯出
四、git archive用法
1、執行git archive --list檢視支援的歸檔格式有tar、tgz、tar.gz、zip
2、匯出最新的版本庫 git archive -o ../latest.zip HEAD
3、匯出指定提交記錄 git archive -o ../git-1.4.0.tar 8996b47
4、匯出一個目錄 git archive -o ../git-1.4.0-docs.zip HEAD:Documentation/
5、匯出為tar.gz格式 git archive 8996b47 | gzip > ../git-1.4.0.tar.gz
6、匯出最後一次提交修改過的檔案
我一直在使用這個命令定期進行傳送給其他人進行審查/整合。這條命令將把近期提交的修改過的檔案匯出到一個zip檔案。
git archive -o ../updated.zip HEAD $(git diff --name-only HEAD^)
7、將 master 以zip格式打包到指定檔案 git archive --format zip --output /path/to/file.zip master
8、比如某個版本我打了 1.0 的 tag,我想匯出 1.0 所有的檔案,如何操作?
如果你的 tag 名是 1.0,可以按照如下方式匯出。
匯出並壓縮為 zip 格式: $ git archive --format=zip --output=v1.0.zip 1.0
匯出並壓縮為 tar.bz2 格式: $ git archive 1.0 | bzip2 > v1.0.tar.bz2
匯出並壓縮為 tar.gz 格式: $ git archive --format=tar 1.0 | gzip > v1.0.tar.gz