1、放棄某次送出,重新送出(Abandoned之後的操作)
git log
git reset 指定的版本号
git add -A
git commit -m"修改描述"
2、送出本地修改的部分檔案到遠端庫
git add 檔案本地完整路徑
git commit -m"修改描述”
git stash (把不願意送出的檔案存入本地備份中)
git review 分支名稱
git stash pop(把你之前不願意送出的檔案pop出來)
3、解決檔案内容沖突,送出代碼到遠端庫
1、合并遠端庫與本地的代碼
git status
git stash
git pull
git stash pop
2、若有沖突,解決完沖突後,執行
git add -A
git commit -m"修改描述"
git review 分支名稱
4、遇到如下問題的解決辦法:

解決辦法:
git reset --hard HEAD^ // 回到上一個版本
git clean -f -d // clear untracked working tree file
git pull // 重新從遠端倉庫上擷取更新内容
注:在執行git clean -f -d 指令前,未跟蹤的檔案要記的做備份。
将本地的代碼上傳到github上:
git add .
git commit -m"init submit code"
git remote add origin https://github.com/hpdx/MLog.git
git pull origin master
git push origin master
git push --set-upstream origin master
在執行
git pull origin master
時若報如下錯誤:
fatal: refusing to merge unrelated histories
請改用如下指令:
git pull origin master --allow-unrelated-histories
建立了一個Module(lib),忘記添加.gitignore檔案,結果同僚pull的代碼,編譯後發現一大堆不想看到的build檔案,
若想以後不再看見它,這時需要每個更新了代碼的人都做的處理如下:
git rm -r --cached wheelview/build
git add .
git commit -m"rm build files"
git push
其中wheelview為Module的名稱
git stash删除後,有辦法恢複嗎
首先輸入
git fsck --lost-found
會看到 一條一條的記錄 類似
dangling commit be96627fde29961d420d887533d7796
複制dangling commit 的id(其他的dangling blob不用理會)
然後輸入
git show be96627fde29961d420d887533d7796
檢視具體内容, 找到你想要的記錄
記錄中會描述日期和摘要,
日期是你git stash 的日期,
摘要會記錄你是在哪一條commit 上進行git stash操作的,
類似(WIP on integration-xf: ac Merge branch 'release' into develop)
貌似隻能一條記錄一條記錄的檢視
找到你想要的記錄後輸入
git merge be96627fde29961d420d887533d7796
這樣就還原了你git stash drop, git stash clear 的内容
push代碼的時候,報出了如下錯誤:
android-lstekiMacBook-Pro:HungerDating android_ls$ git push
error: src refspec dev_1 matches more than one.
error: failed to push some refs to '[email protected]:Android/HungerDating.git'
解決辦法:
android-lstekiMacBook-Pro:HungerDating android_ls$ git tag
dev_1
dev_1
dev_1
android-lstekiMacBook-Pro:HungerDating android_ls$ git tag -d dev_1
Deleted tag 'dev_1.3' (was b70c097)
android-lstekiMacBook-Pro:HungerDating android_ls$ git push
Counting objects: , done.
Delta compression using up to threads.
Compressing objects: % (/), done.
Writing objects: % (/), KiB | bytes/s, done.
Total (delta ), reused (delta )
To git@:Android/HungerDating.git
a5eb40..f4841 dev_1 -> dev_1
checkout遠端的dev分支,在本地起名為dev分支,并切換到本地的dev分支
git checkout -b develop_version96 origin/develop_version96
将本地分支推送到遠端倉庫
git push origin dev_1.
合并分支到master上,先切換分支到master上,在merge目标分支到master上
git checkout master
git merge dev_1
git commit -m "commit dev_1.8"
git push
建立tag并送出到遠端
git tag -a tag_1 -m "commit v1.11"
git push --tags