目錄
一、git概述與基本命令
二、拓展命令
三、開發中的問題(分支、衝突)
注:git倉庫初始化與協作流程,使用 gitee體驗創建倉庫流程(工作中一般使用vscode 插件或者sourceTree 等圖形化工具使用git)
一、git概述與基本命令
工作區:修改代碼的位置
暫存區(Index/stage):add操作後
倉庫區(head):commit操作後
git步驟:版本管理
/etc/gitconfig文件,對當前系統下的所有用户有效
git config --global user.email 123@.com
git config --global user.name shiyu
1.進入文件夾,git bash here
2.git init //默認創建的是master分支,
3.git status
4.git add . //之後會變成綠色,之前是紅色的 //管理要管理的文件 git add -i file -i 交互式
5.git commint -m "v1" //生成一個版本 (不小心生成一個版本:git rebase -i commit號
注意這裏的commit號是要刪除 前面的一個commit號(哈希值)
把pick改為drop
創建分支 git branch //查看分支
7.git checkout dev 跳轉到分支
8.回到master後,git merge dev:合併到master
9.git branch -d dev //刪除分支
10.生成新版本
推送到github
11.git remote add origin https://github.com/..........git //起別名為 origin
12.git push -u origin master //推送master
從github拉取代碼
全部下傳了,包括dev等 (可切換到dev:git checkout dev)
yes! 成功了!
git merge master 先把dev更新(可能比master少)
從暫存區放到工作區
修改文件後變成紅色,把它撤銷修改
git log 查看版本,只能查看當前狀態為終點
git reflog 查看版本
git reset (commit號) 回到這個版本號
git diff
打tag:
git tag 1.0.0 1bfsdf3r2w //1bfsdf3r2w是commit號的前10位字符
丟棄本地所有改動與提示,到服務器獲取最新的版本歷史
git fetch origin
git reset --hard origin/master
git rm //刪除工作區文件
git mv //移動或重命名工作區文件
git blame file //以列表形式查看指定文件的歷史修改
git log --pretty=short
git log -p 1.txt //查看1.txt的改動
二、拓展命令
git commit --amend
rebase
HEAD:一個特別的指針,指向當前正在工作的本地分支的指針
stash原理是:先把工作區恢復到上次提交的內容,同時備份本地的修改,之後就可以正常的pull代碼了,pull完成後,再進行stash pop將之前的修改返回到當前工作區。
ssh
見菜鳥教程:
三、開發中的問題(分支、衝突)
master 只有一個,最終發佈
develop 項目開發的分支
release 預發佈版本
hotfix 修復補丁
工作流程:
開發一個新功能時:develop上新建一個feature,最後合併到develop
衝突:
合併後:
解決:
Current Change 主分支
Incoming Change 我改的要合併進去