常用操作
查看git 配置信息
git config --list
配置個人的用戶名名稱和電子郵件地址
當(dāng)前倉庫
git config user.name "xxx"
git config user.email demo@163.com
全局用戶
git config --global user.name "xxx"
git config --global user.email demo@163.com
基本操作流程
git init
git 初始化
git status
查看當(dāng)前版本管理狀態(tài)
git add xxx
添加指定文件
git add .
添加所有被修改文件
git commit -m "提交描述"
commit 提交內(nèi)容
git rm --cached [文件名]
把暫存區(qū)中的abc文件從暫存區(qū)移除
git restore [文件名]
放棄文件的改變
git log
查看提交歷史
git reflog
查看命令歷史
git reset --hard commitid
恢復(fù)到指定版本
git push -u origin master
將本地代碼推送到遠程 首次推送
git push -f origin master
強制推送本地代碼到遠程
git remote
查看遠程分支的名稱
git remote -v
查看遠程分支的名稱及遠程倉庫的地址
git remote rm [遠程分支名稱]
刪除遠程倉庫分支
git pull
拉取遠程服務(wù)器代碼
git clone [分支地址]
將遠程代碼克隆到本地
git branch
查看當(dāng)前的分支
git checkout -b [分支名]
創(chuàng)建并切換到分支上
git switch -c [分支名]
創(chuàng)建并切換到分支上
git branch -d [分支名]
刪除分支
生成ssh 公私鑰
ssh-keygen -t rsa -C "xxx@xxx.com"
升級操作
git rebase
變基代替merge 具體這個命令就不展開了,大家自行查看
cherry-pick
指定commit 合并到當(dāng)前分支
git push --mirror [目標(biāo)倉庫地址]
遷移一個倉庫代碼到另一個倉庫
Git 相關(guān)問題處理
Q: refusing to merge unrelated histories
這個一般是合并兩個歷史記錄不一致的分支,會提示,如果需要強制合并
A: git merge [分支名] --allow-unrelated-histories
Q: error: The following untracked working tree files would be overwritten by checkout:
這個一般是提示本地有未被跟蹤的文件袜香,切換分支會被覆蓋丟失髓迎。
A:git clean -d -fx .
清理未被跟蹤文件
如果清理后叼风,還是無法切換分支,使用強制切換
git checkout -f