git diff b4556 //当前分支 比较 b4556 commit号
git revert HEAD // 本地会滚到上一个版本,如果需要线上也要回滚 再push 一下
git revert b45568uutgh //会滚到上 8uutgh commit
git reset --hard HEAD^ 本地和线上的分支也会滚到上一个提交点
git reset --hard commit_id // 本地回顾到这个commit_id 上 (不会对本地产生git文件记录,git pull 一下,线上没有的文件就会覆盖掉本地和线上与之对应的文件)
git push origin HEAD --force 强推到远程
git reset HEAD^ // 回滚到上一个提交点 (产生了本地文件的改动,git有记录)
++++++++++++++++++++++++++++++++++++++
回滚代码操作:
git reset --hard commit_id
git push origin HEAD --force
+++++++++++++++++++++++++++++++++++++
git reflog 查看历史操作记录
直接提交到远程的分支
git push origin dev 提交到远程的dev分支上
在远程版本库创建了一个分支后,在本地可以使用
git remote update 更新自己的本地分支
推送某个标签到远程,使用命令: git push origin <tagname>
删除本地版本库上那些失效的远程追踪分支
git remote prune origin
创建+切换分支:git checkout -b <name>
- 提交当前新分支, git add .
git commit -m "****"
git push --set-upstream origin <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -D <name>
删除远程分支:git push origin --delete <name>
删除远程tag: git push origin --delete <tagname>
git push origin --delete v0.1
查看远程地址:
git remote -v
查看远程仓库及分支信息:
git remote show origin
删除远程仓库
git remote rm origin
(这个什么时候用呢?我举个栗子。你把一个有远程地址的项目复制成另一个项目,然后你想把提交到另一个仓库,要先删除与原来项目的远程仓库链接)
修改远程分支名称
git branch -m old_branch new_branch
这样的一个情况,本地先有一个项目,然后想把这个项目放在github 上
先初始化自己的git
git init
git add .
git commit -m "&&&&&" 本地的commit
git remote add origin xxx
git branch --set-upstream-to=origin/master master //设置远程追踪分支
git push -u
git push --set-upstream origin master // 推到这个分支上
或者简化操作:
git init
git remote add origin https://github.com/****/***.git
git add .
git commit -m "commit message"
git push -u origin master
会提示输入GitHub用户名,密码。填写您的用户名,密码即可。
情况:
fatal: refusing to merge unrelated histories
方法:
git pull --allow-unrelated-histories
.gitignore 文件不生效
给已经有的gitignore文件在添加一个忽略文件,一直不起作用
git rm -r --cached .
// git rm -r --cached '**file' git add . git commit -m "fixed untracked files”
Git tag 的使用:
因为 tag 相当于是一个快照,是不能更改它的代码的。
如果要在 tag 代码的基础上做修改,你需要一个分支:
git checkout -b branch_name tag_name
查看某分支从哪个分支上切出来的
搭建gitlab
https://www.cnblogs.com/reblue520/p/7109900.html
自定义git 的操作: