導航:首頁 > 文件教程 > git更新指定文件

git更新指定文件

發布時間:2023-08-24 03:54:20

A. tortoisegit怎麼更新文件

TortoiseGit使用入門 本地使用Git 首先要確定TortoiseGit已找到msysgit,如果先安裝msysgit 再裝TortoiseGit, 一般TortoiseGit 就會自動的識別。 安裝詳見TortoiseGit安裝教程 設置與查詢的方法,這里從開始菜單進入設置。 這是TortoiseGit的設置界面,可以看到用來定位MSysGit的路徑。 點「Check now」檢查有效性。如果有錯的話,就自己設置msysgit的bin文件路徑。 右擊任意文件夾,可以看到TortoiseGit已經嵌入右鍵了。 「Git Clone...」是獲得遠程的版本庫,「Git Create repository here」是將選定的文件夾作為要創建的版本庫。 在要創建版本庫的文件夾中點「Git Create repository here」後,會顯示: 點「Ok」就會在該文件夾的根目錄自動創建一個隱藏文件夾".git" 。 注意:最好找個空的文件夾練習操作,或者備份文件夾。比如誤選了Clean up把無版本控制的文件都刪了,哭都來不及 -_-。 現在,用git初始化過的文件夾就不一樣啦!! 不僅文件都有附加的綠鉤圖標(此為已添加進版本庫且未被修改過的文件),右鍵菜單也多了操作選項。 將要使用git版本庫管理的文件,選擇後用git的菜單add進去 master是Git默認的主要分支(主幹),適合單人獨自開發。

B. Git pull 和fetch merge的區別,單獨更新某一個文件

1. git fetch:相當於是從遠程獲取最新版本到本地,不會自動mergeGit fetch origin mastergit log -p master..origin/mastergit merge origin/master 以上命令的含義: 首先版從遠程的origin的master主分支下載最新的版權本到origin/master分支上 然後比較本地的master分支和origin/master分支的差別 最後進行合並 上述過程其實可以用以下更清晰的方式來進行:git fetch origin master:tmpgit diff tmp git merge tmp 從遠程獲取最新的版本到本地的test分支上 之後再進行比較合並2. git pull:相當於是從遠程獲取最新版本並merge到本地git pull origin master上述命令其實相當於git fetch 和 git merge在實際使用中,git fetch更安全一些因為在merge前,我們可以查看更新情況,然後再決定是否合並

C. Git工作流程和常用命令分享

git是一個分布式版本控制軟體,最初由林納斯·托瓦茲創作,於2005年以GPL發布。最初目的是為更好地管理Linux內核開發而設計。林納斯·托瓦茲在編寫第一個版本時就使用了「git」這個名稱, 他將工具描述為「愚蠢的內容跟蹤器」。

[圖片上傳失敗...(image-c23291-1619063471664)]

四個專有名詞:

Workspace:工作區

Index / Stage:暫存區

Repository:倉庫區(或本地倉庫)

Remote:遠程倉庫

打開本地生成的.git隱藏文件

創建新項目gittest

創建新文件test.txt

git add <file>

git status顯示有變更的文件

git restore <file> 撤迴文件修改內容

git commit –m 「注釋」

修改內容-> 執行git diff工作區和本地倉庫的差異

git log顯示當前分支的版本歷史

git reset --hard HEAD^ 當前版本回退到上一個版本

git reset --hard HEAD^ ^ 當前版本回退到上上一個版本

git reset --hard HEAD~100 回退到前100個版本

恢復已經刪除的版本

git reflog 展示所有的提交記錄

git reset --hard <版本號> 回退到指定版本

git push origin master 將本地master分支推送到遠程master分支,相當於創建遠程分支

git checkout -b dev = git branch dev + git checkout dev 創建並切換分支

git branch 不帶參數,會列出所有本地的分支;帶參數表示創建分支

git branch –d name 刪除本地分支(-D表示強制刪除)

git branch –r 不帶參數,會列出所有遠程的分支

git branch --set-upstream-to=origin/<branch本地> 本地和遠程分支關聯

git push origin –delete <branch> 刪除遠程分支

git merge release用於合並指定分支到當前分支上

註:Fast-forward表示的合並是「快進模式」,也就是直接把master指向dev的當前提交,所以合並速度非常快。在這種模式下,刪除分支後,會丟掉分支日誌信息。可以使用帶參數 --no-ff來禁用」Fast forward」模式。

git merge --no-ff -m 「注釋」dev

git checkout release 切換release分支

vim test.txt 修改某條內容

git commit test.txt -m 「release修改某條內容」

git checkout master 切換master分支

vim test.txt 修改某條同release內容

git commit test.txt -m 「master修改某條內容」

git merge release 顯示沖突

git status 顯示沖突提示

Git用<<<<<<<,=======,>>>>>>>標記出不同分支的內容,其中>>>>release 是指release上修改的內容
vim test.txt 修改內容

git add test.txt

git commit -a -m 「fix conflict」

當前分支有沒有提交但也不合適現在就提交的內容,Git提供了暫儲功能stash

git checkout release

vim test.txt 修改test.txt內容

git checkout develop 此時會提示Aborting

git status 查看當前狀態

Git stash list 查看所有暫儲列表

git stash apply恢復,恢復後stash內容並不刪除,你需要使用命令git stash drop來刪除;
另一種方式是使用git stash pop,恢復的同時把stash內容也刪除了

創建Git Tag並推送遠程伺服器

git tag -a V1.0.0 –m「注釋」 //創建TAG

git push origin V1.0.0 //推送到遠程伺服器

git push origin --tag //提交所有tag至伺服器

git tag -d V1.0.0 //刪除本地標簽

git push origin --delete tag <tagname> //刪除遠程標簽

HEAD,它始終指向當前所處分支的最新的提交點。你所處的分支變化了,或者產生了新的提交點,HEAD就會跟著改變

add相關命令很簡單,主要實現將工作區修改的內容提交到暫存區,交由git管理。

git add .添加當前目錄的所有文件到暫存區

git add 添加指定目錄到暫存區,包括子目錄

git add 添加指定文件到暫存區

commit相關命令也很簡單,主要實現將暫存區的內容提交到本地倉庫,並使得當前分支的HEAD向後移動一個提交點。

git commit -m 提交暫存區到本地倉庫,message代表說明信息

git commit --amend -m 使用一次新的commit,替代上一次提交

上傳本地倉庫分支到遠程倉庫分支,實現同步。

git push 上傳本地指定分支到遠程倉庫

git push --force強行推送當前分支到遠程倉庫,即使有沖突

git push --all推送所有分支到遠程倉庫

關於分支,大概有展示分支,切換分支,創建分支,刪除分支這四種操作。

git branch列出所有本地分支

git branch -r列出所有遠程分支

git branch -a列出所有本地分支和遠程分支

git branch 新建一個分支,但依然停留在當前分支

git checkout -b 新建一個分支,並切換到該分支

git checkout 切換到指定分支,並更新工作區

git branch -d 刪除分支

git push origin --delete 刪除遠程分支

關於分支的操作雖然比較多,但都比較簡單好記

merge命令把不同的分支合並起來。在實際開放中,我們可能從master分支中切出一個分支,然後進行開發完成需求,中間經過R3,R4,R5的commit記錄,最後開發完成需要合入master中,這便用到了merge。

git merge 合並指定分支到當前分支

註:如果在merge之後,出現conflict,主要是因為兩個用戶修改了同一文件的同一塊區域。需要針對沖突情況,手動解除沖突。

rebase又稱為衍合,是合並的另外一種選擇。

在開始階段,我們處於new分支上,執行git rebase dev,那麼new分支上新的commit都在dev分支上重演一遍,最後checkout切換回到new分支。這一點與merge是一樣的,合並前後所處的分支並沒有改變。

git rebase dev,通俗的解釋就是new分支想站在dev的肩膀上繼續下去。

rebase操作不會生成新的節點,是將兩個分支融合成一個線性的提交。

rebase也需要手動解決沖突。

1.如果你想要一個干凈的,沒有merge commit的線性歷史樹,那麼你應該選擇git rebase

2.如果你想保留完整的歷史記錄,並且想要避免重寫commit history的風險,你應該選擇使用git merge

reset命令把當前分支指向另一個位置,並且相應的變動工作區和暫存區。

git reset —soft 只改變提交點,暫存區和工作目錄的內容都不改變

git reset —mixed 改變提交點,同時改變暫存區的內容

git reset —hard 暫存區、工作區的內容都會被修改到與提交點完全一致的狀態

git revert用一個新提交來消除一個歷史提交所做的任何修改。

在回滾這一操作上看,效果差不多。git revert是用一次新的commit來回滾之前的commit,git reset是直接刪除指定的commit。

在 Git工作區的根目錄創建一個特殊的.gitignore文件。

在.gitignore文件中,添加需要忽略的文件。

git rm -r --cached . //將倉庫中的index遞歸刪除

git add . //重新添加倉庫索引

git commit -m 「update git.ignore」 //提交

git branch --set-upstream-to=origin/<branch> <branch> //重現將本地倉庫和遠程倉庫關聯

最後,如果此篇博文對你有所幫助,別忘了點個贊喲~

閱讀全文

與git更新指定文件相關的資料

熱點內容
油卡盒子APP是什麼公司名下的 瀏覽:597
怪物獵人wp文件夾什麼意思 瀏覽:108
設置密碼的pdf文件如何轉換成word 瀏覽:876
多個文件合並到一起後叫什麼 瀏覽:387
資料庫位是什麼意思 瀏覽:104
如何改變手機上的網路連接 瀏覽:908
某網站圖片侵權如何舉報 瀏覽:820
zemax宏編程有什麼用 瀏覽:874
做保函為什麼要獲取招標文件 瀏覽:921
魔獸世界數據是哪個文件夾 瀏覽:439
oppor9s手機系統升級 瀏覽:728
文件上傳ie8 瀏覽:619
cleanmymac恢復文件 瀏覽:241
win10裝虛擬機沒有網路 瀏覽:283
安排什麼意思網路語言 瀏覽:837
順豐常州寄份文件到廣州多少錢 瀏覽:73
wow110掛機升級 瀏覽:967
請問有什麼app可以壓縮視頻 瀏覽:195
凱美瑞藍牙連接不了蘋果手機啊 瀏覽:923
手機無法搜索到網路列印機驅動 瀏覽:411

友情鏈接