git命令详解
一、git操作分支命令查看分支 git branch查看分支并显示分支提交 git branch -v修改本地分支名称 git branch -m oldName newName新建分支 git branch test (此方式会以当前分支内容为模板, 来新建分支,只创建,不会切换到该分支)新建并切换到该分支上 git checkout -b test (此方式会以当...
一、git操作分支命令
-
查看分支 git branch
-
查看分支并显示分支提交 git branch -v
-
修改本地分支名称 git branch -m oldName newName
-
新建分支 git branch test (此方式会以当前分支内容为模板, 来新建分支,只创建,不会切换到该分支)
-
新建并切换到该分支上 git checkout -b test (此方式会以当前分支内容为模板,来新建分支)
-
新建并切换到该分支上 git checkout -b test origin/master (此方式会以远程origin/master为基础来新建分支)
-
新建分支拉取远程分支git checkout name 若本地没有分支,则会拉取远程的name分支,和git checkout -b test origin/master功能类似
-
在远程新建和本地分支同名的分支:git push origin branchName branchName本地分支名
-
切换分支 git checkout test
-
删除分支 git branch -d test (删除当前未打开的分支)
-
删除分支 git branch -D test (删除当前正在打开的分支)
-
恢复删除的分支
git reflog (查看多有分支的散列值)
git branch branchName HEAD@{4} (根据散列值恢复分支) -
合并本地分支 git merge test
-
获取远程分支 git fetch origin master
-
合并远程分支 git merge origin/master
-
直接合并远程分支, 相当于上面两步 git pull origin master
-
查看远程分支 git branch -r
-
删除远程分支 git push origin --delete branchName
-
删除远程分支 git branch -r -d origin/branchName
-
删除远程分支 git push origin :branchName
-
本地分支推送到远程:
- git checkout -b feature-branch //创建并切换到分支feature-branch
- git push origin feature-branch:feature-branch //推送本地的feature-branch(冒号前面的)分支到远程origin的feature-branch(冒号后面的)分支(没有会自动创建)
- git branch --set-upstream-to=origin/jq jq
二、git操作远程仓库命令
- 添加远程仓库 git remote add remoteName git@gitee.com:jie/ya.git (git@gitee.com:jie/ya.git是仓库的ssh)
- 查看远程仓库名称 git remote show origin
- 重命名远程仓库 git remote rename oldName newName
- 删除远程仓库 git remote rm origin
三、git提交文件命令
- 添加文件 git add . (标记所有当前修改的文件)
- 取消添加 git reset 文件名
- 取消暂存区的文件 git reset
- 提交文件到本地 git commit -m "提交注释"
- 提交到远程仓库 git push origin master
- 强制推送 git push -f origin branch (最好不要使用,origin 远程remote名字, branch 远程分支名)
- git设置忽略文件 在项目下创建.gitignore文件,里面写好配置规则
- 修改已经 commit 但没有 push 的 commit message
git commit --amend
按键i可进入编辑模式(与vim用法相同)。
按键ESC可退出编辑模式(与vim用法相同)。
在非编辑模式下输入:wq(与vim用法相同)可保存退出。 - 修改已经push的commit message
比如要修改的commit是倒数第三条,使用下述命令:
git rebase -i HEAD~3
输入i进入编辑模式,将pick修改为iedit :wq
执行 git commit --amend
修改备注信息
执行 git rebase --continue
执行 git push -f 推送到服务端。(谨慎使用git push -f) - git回滚
先查看当前commit记录:git log
git reset --hard commit_id (退到/进到 指定commit的hash码 commit_id:239afed0857cc2e77c17c0101)
也可以查出来commit的hash码,然后在idea里面使用VCS-git-resethead来回滚
四、git修改配置命令
- 查看所有配置 git config --list
- 修改全局用户名和邮箱地址
git config --global user.name "username"
git config --global user.email "email" - 修改局部用户名和邮箱地址
cd ~/you project (进入当前项目)
git config user.name "username"
git config user.email "email" - 创建ssh 秘钥和公钥 ssh-keygen -t rsa -C “邮箱地址” (会生成对应的秘钥文件)
公钥只可以pull和clone项目,若想修改项目,必须添加个人个人公钥 - 删除gitconfig配置项 git config --global --unset user.name
五、git同步本地文件到仓库
第一步 : 在git上创建远程仓库
第二步 : 在本地文件夹中git init
第三步 : git remote add origin 远程仓库的ssh
第四步 : git pull origin master 同步远程仓库
第五步 : git add . git commit -m “理由” git push origin master
出现错误 refusing to merge unrelated histories
这是在网页项目刷新后,本地项目和远程仓库不同步所致,需要重新删除init文件,重新git init
或者(按照github初始化项目)
echo "# Interview" >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/yangjie-github/Interview.git
git push -u origin master
》》》博主长期更新学习心得,推荐点赞关注!!!
》》》若有错误之处,请在评论区留言,谢谢!!!
更多推荐

所有评论(0)