目錄
1 坑-更新
*(17/10/26)本地直接刪除文件後,git到遠程倉庫,爲什麼不會同步刪除對應文件
*(18/02/27)如何解決衝突合併的問題
* ( 18/03/02 )changes not stage for commit(存在submodule的情況)
* (18/04/27) 正確使用branch
2 學習筆記
*(17/10/26)常用命令
*(18/02/11)關於遠程分支
正文
1. 坑-更新
- (17/10/26)本地直接刪除文件後,git到遠程倉庫,爲什麼不會同步刪除對應文件
https://segmentfault.com/q/1010000003049019
git add .
只會在stage添加文件和修改文件,不會刪除文件
git add -A
會stage所有操作包括刪除文件
- (18/02/26)如何解決衝突合併
在協作開發的過程中我們經常會遇到遠程的倉庫的版本比本地版本高情況
這個時候我們通常需要先git pull [remote][branch]
獲取最新的版本信息之後,在上傳自己本地新的開發情況。
這個時候我們就會碰到遠程倉庫與本地倉庫產生衝突的情況
在你還沒解決衝突的情況下進行其他操作
git命令行會提示你發生衝突的文件,比如
unresolved conflict
U xxx.txt
xxx.txt之中有衝突還未解決
ok,那我們來解決下xxx.txt的衝突吧
打開xxx.txt文件
會看到
>>>HEAD
function x(a,b){
return a+b
}
============
async function x(a,b)=>{
return a+b
}
<<<fudfhjbvjcbducud
這是什麼意思呢
就是以=======爲分界線
上面的部分是你pull之前文件的內容
下面的部分是你pull的遠程倉庫文件的內容
二者發生了衝突,你需要在上下兩個部分中選擇一個部分刪除另外一個部分或者相辦法折衷以下也是可以的
比如我這樣改
async function x(a,b)=>{
return a+b
}
我刪除上面部分的內容了
這樣我們就解決了一個衝突,然後我們就可以進行
git add .
git commit -m"conflict resolved"
這樣git就會知道你解決了本地的衝突
*(18/02/11)關於遠程分支
我嘗試了git add basic-form
後沒有任何變化
之後查看網上的解決方案發現這是存在submodule的情況
所以我
cd basic-form
git add .
git commit -m"fix"
cd ..
git add basic-form
之後進行
git commit -m"fix basic-form"
就可以
git push
- (18/04/27) 正確使用branch
- (1)
今天在使用git branch
時候
git checkout -b dev
touch 1.txt
echo hello >> 1.txt
然後
git checkout master
//error: pathspec 'master' did not match any file(s) known to git.
後來發現原來如果master分支下沒有commit記錄,git並不會將這個作爲分支
*(2)
解決了上面的問題還有一個問題
我在dev分支下建立的文本1.txt在master分支下也能看到
git add .
git commit -m"add 1.txt"
git checkout master
之後在master分支下就看不到1.txt了
所以看來沒有commit的修改都會被分支共享
2. 學習筆記 - 更新
(17/10/26)提交修改
git add
stage 暫存區
git commit
版本區
git push
遠程倉庫
git status
查看當前狀態
git log
查看信息分支合併
git branch
列出所有分支
git branch [new branch]
創建新的分支
git checkout [branch]
切換分支
git branch -d [branch]
刪除分支
git merge [branch]
合併分支linux常用command line
pwd
當前目錄
dir
當前目錄下文件
mkdir
創建目錄
cat
查看文件
vi
編輯文件
touch
創建文件
rm
刪除文件
rm -rf
強制刪除文件
*(18/02/11)關於遠程分支
如何查看遠程分支
git branch -r
如何推送本地分支到遠程分支
git push <upstream> HEAD:<branch_name>
如何刪除遠程分支
git push <upstream> --delete <branch_name>