git工作常用命令(快速入门)
仓库初始化及代码获取
- 获取已有项目
- 获取远程仓库,需要指定远程仓库地址
- 在项目目录下执行:
git clone <REPO_URL>
- 创建新项目
- 在Gitlab上创建一个新项目,拿到项目的gitlab链接
- 进入本地项目根目录,执行:
git init
- 关联本地和远端仓库:
git remote add origin <REPO_URL>
分支管理(切换、创建、合并及删除)
- 切换已有分支
- 获取远端的新分支信息:
git fetch
- 切换到具体分支(如develop) :
git checkout develop
- 更新分支代码:
git pull
- 获取远端的新分支信息:
- 新建分支
- 创建新分支
- 从当前分支复制过去:
git branch <BRANCH_NAME>
- 拷贝远端分支到本地:
git branch <BRANCH_NAME> origin/<ORIGIN_BRANCH_NAME>
- 从当前分支复制过去:
- 切换到新分支:
git checkout <BRANCH_NAME>
- 更新新分支到远程仓库:
git push --set-upstream origin <BRANCH_NAME>
- 创建新分支
-
分支合并(如把feature/test合并到develop)
- 签出合并的目标分支获取最新文件,
git checkout develop
,git pull
- 合并分支:
git merge test --no-ff
,–no–ff可以保留原分支历史,
也可以修改 C:\Users\用户名.gitconfig 配置ff= true,直接使用git merge
- 签出合并的目标分支获取最新文件,
-
删除分支
- 删除本地分支:
git branch -d <BRANCH_NAME>
- 删除远程分支:
git branch -r -d origin/<BRANCH_NAME>
- 删除本地分支:
日常编辑和提交
-
提交代码流程:本地工作区文件 -> git暂存区(
add指令
)-> git本地仓库(commit指令
) ->git远程仓库(push指令
)git区域图
-
暂存区文件的添加和移除(
add指令
、rm指令
)- 添加当前目录及子目录下所有文件:
git add .
- 添加指定文件:
git add <FILE_PATH>
- 移除指定文件:
git rm --cached <FILE_PATH>
,这里不加–cached会把文件一起从工作区删除
- 添加当前目录及子目录下所有文件:
- 提交到本地仓库(
commit指令
)- 将工作区的代码提交:
git commit -m '提交信息'
- 查看提交历史:
git log
、查看树状图:git log --graph
- 查看提交状态:
git status
- 将工作区的代码提交:
-
推送到远程仓库(
pull指令
、push指令
)push代码前一定要pull先:
git pull --rebase
,pull默认的方式是用merge,这里建议用rebase,才不会出现菱形结构(如图CDGFEC),
也可以修改 C:\Users\用户名.gitconfig 配置rebase = true,直接使用git pull
推送本地库更改到远端库(已提交的内容不能反悔):
git push
- 暂存代码:
git stash
,保存工作区和暂存区的改变(手头功能无法提交,又影响切换分支、修改其他功能等时候常用)- 暂存文件:
git stash
- 恢复文件:
git stash pop
- 暂存文件: