-
命名规范
-
// 本地分支 local branch lBranch // 远程分支 remote branch rBranch
-
拉取更新到本地
-
// 拉取仓库信息 git pull // 拉取指定远程仓库到当前本地仓库: rBranch->远程仓库分支 git pull origin rBranch
-
查看分支信息
-
git branch
-
查看本地、远程所有分支
-
git branch -a
-
切换分支
-
// lBranch->本地分支名 git checkout lBranch
-
从指定远程仓库创建本地分支,并自动切换到新分支
-
// lBranch->新建本地分支名 origin/rBranch->远程仓库名 git checkout -b lBranch origin/rBranch
-
从当前本地分支创建新分支,并自动切换到新分支
-
// newLBranch->新分支名 git checkout -b newLBranch
-
从指定本地分支创建新分支,并切换到新分支
-
// newLBranch->新分支名 lBranch->指定的本地分支 git checkout -b newLBranch lBranch
-
推送到远程
// rBranch->远程分支名 git push origin rBranch
-
查看分支关联信息
git branch -vv
-
关联当前本地与远程的分支
// origin/rBranch->远程分支名 git branch --set-upstream-to=origin/rBranch
-
检查本地修改文件
-
git status
-
添加本地目标文件
// 添加所有修改 git add . // 添加整个Scripts文件夹下所有修改,当前所在位置有该文件夹 git add Scripts/ // 添加指定文件修改 git add filePath // 文件路径
-
查看修改信息
git diff --staged
-
撤销添加内容
// 撤销所有 git reset . // 撤销整个Scripts/文件夹提交内容,当前所在位置有该文件夹 git reset Scripts/ // 撤销单个文件 git reset filePath // 文件路径
-
还原文件修改
-
// 还原未添加的所有文件(没有被git add 到缓存区里的文件) git checkout . // 还原未添加的Scripts/下所有文件,当前所在位置有该文件夹 git checkout Scripts/ // 还原未添加的指定文件 git checkout filePath
-
恢复文件到指定版本
// 查看目标文件or目标文件夹日志 git log 目标文件路径or文件夹路径 // 找到想要还原的提交commit版本码,复制 // 还原文件or文件夹 git checkout 327*********************0ef 目标文件路径or文件夹路径
-
提交分支到本地
git commit -m '本次提交的信息日志'
-
推送分支到远程
git push
-
移除本地分支
// lBranch->要移除的分支名 git branch -d lBranch
// 确认无误,强行移除 git branch -D dev
-
移除远程分支
-
// rBranch->要移除远程的分支名 git push origin --delete rBranch
// 移除远程不存在的本地分支 git remote prune origin
-
移除Untracked files(无路径的文件)
-
git clean -f
-
变基(rebase)
-
// 切换到分支 git checkout lBranch // 变基从主干到分支 git rebase orgin // 1-解决完冲突,直接continue git rebase --continue // 2-解决完冲突,添加解决的冲突 git add . // 循环上两步,直到问题解决 // 循环上两步,直到问题解决 // 循环上两步,直到问题解决 // 如果rebase解决冲突过程出现意外,随时打断,分支将回到rebase前 git rebase --abort
-
忽略or取消忽略文件
-
git update-index --assume-unchanged <要忽略的文件> git update-index --no-assume-unchanged <要取消忽略的文件>
-
代码提交时丢失
-
// .找回丢失的代码提交记录 git fsck --lost-found git show 丢失记录id
-
更换仓库地址
-
// 查看当前仓库地址 git remote -v // 更换地址 git remote set-url origin 新地址
-
生成/添加SSH公钥
-
// 生成ssh key // ed25519->保存key文件的名称 // xxxxx@xxxxx.com->key的名称中英文都可以 // 按照提示完成三次回车,即可生成 ssh key ssh-keygen -t ed25519 -C "xxxxx@xxxxx.com" // 查看ssh key cat ~/.ssh/id_ed25519.pub
-
本地新仓库上传远程
-
// 本地新仓库初始化 git init // 远程创建好仓库 // 获得远程remoteURL // 本地新仓库关联远程 git remote add origin remoteURL // 做第一次拉取,同步仓库信息 git pull origin master // 提交想要添加到远程的文件夹 git add dir1/ dir2/ // 提交信息 git commit -m'提交信息' // 提交 git push // 查看远程仓库内容
-
摘选合并提交其他分支提交commit ID
-
// 1.切到需要摘取的分支 lBranch01: 本地分支01 git checkout lBranch01 // 2. 查找需要摘的commit id,复制下来 git log // 3.切到目标分支 lBranch02: 本地分支02 git checkout lBranch02 // 4.摘选到目标分支 commitId: 提交的ID git cherry-pick 粘贴commitId // 5.此时 从"本地分支01"的单独一条提交被合并到了"本地分支02" // 6.提交到远程
-
摘选合并提交其他分支整个文件夹or文件
-
// A分支单个文件(文件夹)合并到B分支 // 两个本地分支均更到最新 // 切换到B分支 git checkout A 路径/../文件名(路径/../文件夹) // 合并结束,记得查看提交 git status git commmit -m'描述' git push
-
回滚末次提交
git revert 粘贴commitId