git status 查看當前更改狀態
rm app -rf 放棄本地app目錄更改
把新增加的文件使用git add添加進改動
使用git commit提交改動
使用git log查看提交的commit id
使用命令
git diff-tree -r --no-commit-id --name-only d18f9d5f17e190cfbb836a4acff2d96c0d466a2c | xargs tar -rf mytarfile.tar
把修改的文件打包
導出新修改的文件
git archive -o ../update.zip HEAD $(git diff --name-only HEAD)
修改文件后,怎么提交到遠程倉庫(這個不管)
1.git status 查看git是否有修改內容需要提交
2.git add 指向需要提交的內容文件
3.git commit 提交到本地庫
4.git push origin master 提交到遠程倉庫
(這個比較可靠)
git add . 提交暫存的更改
git commit -m "提交注釋"
git push origin master 分支名稱
正常來說這三部就夠了
忽略文件不起作用強制更新
git rm -r --cached .
git add .
git commit -m "update .gitignore"
git rm --cached readme1.txt 刪除readme1.txt的跟蹤,并保留在本地。
git rm --f readme1.txt 刪除readme1.txt的跟蹤,并且刪除本地文件。
git 如何在本地同步遠程分支和tag
1.git如何同步本地分支與遠程origin的分支
問題場景1:
同事A創建了本地分支branchA并push到了遠程->同事B在本地拉取(git fetch)了和遠程branchA同步的本地分支branchA->同事A開發完成將遠程分支branchA刪除(遠程倉庫已經不存在分支branchA)->同事B用git fetch同步遠端分支,git branch -r發現本地仍然記錄有branchA的遠程分支
分析:遠端有新增分支,git fetch可以同步到新的分支到本地,但是遠端有刪除分支,直接"git fetch"是不能將遠程已經不存在的branch等在本地刪除的
解決方法:
git fetch --prune #這樣就可以實現在本地刪除遠程已經不存在的分支
或者簡略:
git fetch -p
git fetch -p origin
git remote prune origin
branch常用的命令:
git branch -a #查看本地和遠程所有的分支
git branch -r #查看所有遠程分支
git branch #查看所有本地分支
git branch -d -r origin/branchA #刪除遠程分支
其他較常用的命令
git fetch #將本地分支與遠程保持同步
git checkout -b 本地分支名x origin/遠程分支名x #拉取遠程分支并同時創建對應的本地分支
問題場景2:
本地分支提示:Git Your branch is ahead of ‘origin/master’ by X commits,你想讓本地直接和遠程保持同步,想讓不再提示這個討厭信息,那么如果你本地的commit確保不想要,可以如下操作:
解決方法:
1)git reset --hard origin/master
或者還有一個將本地代碼與服務器代碼更新一致的語句
2)git branch -u origin/master
如果想直接回退版本讓遠程和本地代碼保持一致,那就確保本地代碼沒問題之后強制推到遠程
git push -f origin master
2.git 如何同步本地tag與遠程tag
問題場景:
同事A在本地創建tagA并push同步到了遠程->同事B在本地拉取了遠程tagA(git fetch)->同事A工作需要將遠程標簽tagA刪除->同事B用git fetch同步遠端信息,git tag后發現本地仍然記錄有tagA
分析:對于遠程repository中已經刪除了的tag,即使使用git fetch --prune,甚至"git fetch --tags"確保下載所有tags,也不會讓其在本地也將其刪除的。而且,似乎git目前也沒有提供一個直接的命令和參數選項可以刪除本地的在遠程已經不存在的tag(我目前是沒找到有關這類tag問題的git命令~~,有知道的同學可以告知我下,互相進步)。
解決方法:
git tag -l | xargs git tag -d #刪除所有本地分支
git fetch origin --prune #從遠程拉取所有信息
#查詢遠程tags的命令如下:
git ls-remote --tags origin
tag常用git命令:
git tag #列出所有tag
git tag -l v1.* #列出符合條件的tag(篩選作用)
git tag #創建輕量tag(無-m標注信息)
git tag -a -m ‘first version’ #創建含標注tag
git tag -a f1bb97a(commit id) #為之前提交打tag
git push origin --tags #推送所有本地tag到遠程
git push origin #推送指定本地tag到遠程
git tag -d #刪除本地指定tag
git push origin :refs/tags/ #刪除遠程指定tag
git fetch origin #拉取遠程指定tag
git show #顯示指定tag詳細信息
Git中從遠程的分支獲取最新的版本到本地——兩種命令
Git中從遠程的分支獲取最新的版本到本地有這樣2個命令:
1. git fetch:相當于是從遠程獲取最新版本到本地,不會自動merge
Git fetch origin master
git log -p master..origin/master
git merge origin/master
以上命令的含義:
首先從遠程的origin的master主分支下載最新的版本到origin/master分支上
然后比較本地的master分支和origin/master分支的差別
最后進行合并
上述過程其實可以用以下更清晰的方式來進行:
it fetch origin master:tmp
git diff tmp
git merge tmp
從遠程獲取最新的版本到本地的test分支上
之后再進行比較合并
2. git pull:相當于是從遠程獲取最新版本并merge到本地
git pull origin master
上述命令其實相當于git fetch 和 git merge
在實際使用中,git fetch更安全一些
因為在merge前,我們可以查看更新情況,然后再決定是否合并結束
## git還原到之前某個版本,本地和遠程都還原
命令行操作:
第一步: git log 查看之前的commit的id,找到想要還原的版本
第二步: git reset --hard 44bd896bb726be3d3815f1f25d738a9cd402a477?? 還原到之前的某個版本
第三步: git push -f origin master? 強制push到遠程
## 使用git把某一次commit修改過的文件打包導出
在用[git](http://www.caizhichao.cn/tag/git)做項目的版本控制時,經常需要更新某次或某幾次修改后代碼文件(無論是新增的需求文件還是修復了BUG的原有文件),使用git最方便的做法就是導出差異文件,也就是[使用git導出某次commit的文件](http://www.caizhichao.cn/675.html),或[使用git導出某次commit后的文件](http://www.caizhichao.cn/)。
一般在修改完代碼后的工作流程是這樣的:
1、把新增加的文件使用Git add添加進改動:`git add .`
2、使用git commit提交改動:`git commit -am 'update something'`
3、使用git log查看提交的commit id:`git log`
4、記錄下commit id號,比如:*f4710c4a32975904b00609f3145c709f31392140*
5、使用命令把修改的文件打包導出:
打包某次commit:
`git diff-tree -r --no-commit-id --name-only f4710c4a32975904b00609f3145c709f31392140 | xargs tar -rf update_201800001.tar`
使用命令把某次節點后的文件導出:
window下:
`git diff f4710c4a32975904b00609f3145c709f31392140 HEAD --name-only | xargs tar -rf update_201800001.tar`
[linux](http://www.caizhichao.cn/tag/linux)下:
`sudo git diff f4710c4a32975904b00609f3145c709f31392140 HEAD --name-only | cpio -pvdmu /var/www/git_update/update_201800001.tar`
# 導出兩個版本的差異文件
```
git archive -o update.zip HEAD $(git diff? 新版本標識串? 舊版本標識串 --name-only)
```
# 打包某次提交
```
`git diff-tree -r --no-commit-id --name-only e26f157e4c7dafb5a3898e5f40192d020dc54be9| xargs tar -rf ../update.tar`
```
- 翼通長租公寓管理系統
- 版本升級
- 操作手冊
- 添加新店
- 給新店分配管理員(店長)
- 新店必須完成的基礎信息
- 常見問題
- 翼通經銷商管理系統
- 版本升級
- 聚源達印刷管理系統
- 0、升級說明及重要問題注意
- 1、訂單狀態說明(兼容老系統)
- 四月顯示之僵尸產品
- 打印
- Html5中localStorage存儲JSON數據并讀取JSON數據的實現方法
- 功能說明
- 2.各種操作說明
- 升級說明
- 物聯網
- CentosARM
- 樹莓派(RPi) CentOS7擴展內存卡剩余空間
- 翼通管理系統快速開發框架LayUI版
- layui模塊使用方法
- 默認顯示自定義排序方法
- linq查詢輸出json小例子
- layui json格式
- treetable借鑒
- layui表單驗證
- layui圖標
- 第一書記信息管理系統
- 多條件查詢搜索
- 年齡計算
- 家庭數據打印
- 數據打印框架
- 后臺處理獲取需打印數據
- js打印方法
- 圖片上傳
- 單圖上傳
- 多圖上傳
- 多圖上傳CSS樣式
- 圖片保存
- 高級大招
- SqlServer
- sqlserver 去重復并查詢的一列數據拼接用逗號隔開顯示
- 修復SqlServer孤立用戶
- VS2017提高開發效率的幾大技巧看過終生受用,錯過繼續盲目忙碌。
- 微信開發
- 微信開發基礎
- 1、微信公眾平臺測試帳號的注冊與使用
- 2、NuGet引用Senparc微信開發類
- 3、微信接入應答問文件
- 微信開發進階
- 1、綁定用戶把openid、用戶頭像、昵稱綁定到數據庫
- 2、阿里大魚發送驗證短信
- 3、測試用戶是否關注公眾號
- 人人商城
- 1、公眾號接入配置
- 2、公眾號支付配置
- 3、手機短信配置
- 4、小程序配置
- 5、店鋪可視化裝修
- 6、三級分銷配置
- MarkDown
- 1、markdown寫流程圖幫助文檔
- 阿里短信
- 常用短信模板
- 中國翼通基類庫
- 一、說明
- 二、基類庫代碼(用法索引)
- 1、阿里大魚短信
- 2、阿里云短信類
- 3、web.config操作類
- 4、字符操作類
- 5、隨機數
- 6、拼音類
- 7、身份證類
- 8、SqlServer數據庫操作sqleasy
- 9、JSON類
- 999、日志調試類
- 10、QRCode生成二維碼
- 11、保存遠程圖片到本地
- 12、Session類
- 13、ip類
- 14、驗證碼
- 15、base64類
- 翼通CMS版本升級
- 昆明市公安局政治部
- 3D打印
- 老撾消費機
- 幫助文檔
- 工作流開發
- 工作流數據庫結構
- 工作流借鑒
- 思想
- 設計工作流要注意的問題
- 編譯錯誤
- 缺少編譯器要求的成員“Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo.Create"
- EasyUI操作例子
- combogrid綁定
- linq
- 建立linqToSqlServer連接
- 公租房管理系統
- 改進升級更新
- 云南民間工藝傳承協會
- 思路
- 問題
- 云南麥根科技有限公司
- 月嫂多APP
- 嫂多點APP
- 管理后臺
- Laravel
- 一、開發環境搭建
- 二、如何正確使用 Composer 安裝 Laravel 擴展包
- 三、修改數據庫連接
- 四、創建一個簡單的Laravel例子
- 五. laravel維護日記
- 六、nginx下偽靜態配置
- 七、增刪查改知識點
- 騰訊借貸反欺詐開發
- ThinkPHP
- 0、ThinkPHP安裝
- 2、Zend Studio 13.6.1 的安裝和破解
- 1、thinkphp自由查詢語句分頁
- 3、thinkphp M R 方法詳解
- 4、前臺循環
- 5、laiui提交表單
- 翼通云官方網站(里面有內容)
- 開發過程中各種問題
- 小鳥云系統的坑
- 更新日志
- 單頁面模板
- 翼通智慧網站策劃
- 4.05到4.10升級
- phpstom
- 一、設置字體、外觀
- 二、phpstom運行php教程
- 三、phpstom debug調試
- 四、PHPStorm 提示502 Bad Gateway
- vscode
- vscode常用插件
- vscode使用git翼通教程
- Git忽略提交規則 - .gitignore配置運維總結
- Git忽略文件不起作用解決方案
- vscode添加新建文件頭部注釋和函數注釋
- git命令
- git命令大全
- vscode每次打開都會覆蓋窗口
- git忽略文件格式
- ios au 更新APP store教程
- iOS APP版本更新升級教程
- 上傳ipa常見錯誤解決方案
- 上傳ipa報錯版本號重復問題解決教程
- hbuider
- Hbuider制作app升級包的簡單辦法 (升級官方提供的案例)
- linux
- wdcp后臺訪問安全設置即限制域名/IP訪問設置及清除方法
- MSSQL數據庫
- 恢復
- SqlServer將沒有log文件的數據庫文件附加到服務器中
- 1、mssql2019報18456不能登錄
- [簡易版]幼兒園新生入學報名管理系統
- 物流園電子出門條系統
- 電腦自選超市開發
- 服務商操作手冊
- 管理員操作手冊
- EcShop
- 一、EcShop5.3升級5.6遇到問題
- 2、ECShop 時間相差8小時、時間不對的問題
- 3、數據庫操作
- 3、嵌入類的方法
- 4、入駐商列表sql