從命令行創建一個新的倉庫
touch README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin [email protected]:TV/ww.git
git push -u origin master
從命令行推送已經創建的倉庫
git remote add origin [email protected]:TV/ww.git
git push -u origin master
創建Develop分支並推送到遠程:
新建本地分支:git checkout -b develop master
推送到遠程:git push origin feature/v2.0
將Develop分支合併到Master分支:
# 切換到Master分支
git checkout master# 對Develop分支進行合併
git merge --no-ff develop
如果有衝突 解決衝突 git add . git commit -m "" git push
如果沒有衝突 直接git push
合併某一次提交:
例如要將A分支的一個commit合併到B分支:
首先切換到A分支
git checkout A
git log
找出要合併的commit ID :
例如
0128660c08e325d410cb845616af355c0c19c6fe
然後切換到B分支上
git checkout B
git cherry-pick 0128660c08e325d410cb845616af355c0c19c6fe
打標籤:
git tag -a 0.1.1
推送所有標籤
git push origin --tags
推送指定版本的標籤
git push origin <版本號>
刪除分支:
刪除本地分支:
git branch -d fixbug-0.1
刪除遠程分支:
git push origin --delete feature/v2
git遠程刪除分支後,本地git branch -a 依然能看到的解決辦法。
使用命令 git remote show origin,可以查看remote地址,遠程分支,還有本地分支與之相對應關係等信息。
此時我們可以看到那些遠程倉庫已經不存在的分支,根據提示,使用 git remote prune origin 命令
這樣就刪除了那些遠程倉庫不存在的分支。
.gitignore規則不生效
.gitignore只能忽略那些原來沒有被track的文件,如果某些文件已經被納入了版本管理中,則修改.gitignore是無效的。
解決方法就是先把本地緩存刪除(改變成未track狀態),然後再提交:
1.
所有:git rm -r --cached .
單個文件或文件夾:git rm -r --cached filename
2.git add .
3.git commit -m 'update .gitignore'
4.git push