git命令备份
创建ssh
ls -al ~/.ssh
//ssh-keygen -t rsa -C "@.com"
ssh-keygen -t ed25519 -C "@.com"
cat ~/.ssh/id_rsa.pub
id_rea是私钥 id_rsa.pub是公钥
免密登录
先安装ssh
sudo apt install openssh-server
sudo systemctl enable ssh
sudo systemctl start ssh
客户端
cat ~/.ssh/id_rsa.pub
服务端
vim ~/.ssh/authorized_keys
git 仓库
git config --global credential.helper store
全局修改作者信息
git config --global user.name""
git config --global user.email ""
当前仓库修改作者信息
git config --global user.name""
git config user.email
加速访问
gitclone.com/
repo切换所有分支
repo forall -c 'git checkout qc/vi01'
查看当前文件处于哪个仓库
git rev-parse --show-toplevel
基于远程分支创建新分支
git switch -c feature/name origin/main
关联分支
git branch -u origin/
写两个分支名的话远程分支写前面,本地分支写后面
git branch -u origin/远程分支 本地分支
撤回某次提交
git revert --no-commit
注意这是一个前开后闭区间,即不包括 commit1,但包括 commit2。
git revert --no-commit f7742cd..551c408
从本地提交中退回
git reset HEAD^
默认是git reset --mixed HEAD^
撤回两次提交git reset HEAD~2
从暂存区中撤销
git reset HEAD * #撤消所有
git reset HEAD a.php #只撤消a.php
撤销修改
git checkout . # 放弃所有文件的修改
git checkout 11.txt #放弃11.txt文件的修改
单个文件撤销
git checkout b1ddd6b0 vm/notifications_vm.h
修改的文件已被git commit,再次修改的文件,合并到上一次提交的commit中,不再产生新的Commit
**修改最后一次提交 **
git add sample.txt #修改文件添加到暂存区
git commit --amend -m"说明" #合并提交到上一次的commit里
git commit --amend #或者 进入到编辑里编写提交注释
修改上一次commit提交的备注
git commit --amend
不产生merge提交
git pull --rebase
更新分支地址
git remote set-url origin http://120.79.203.131:8099/wearsys/Anker-Token.git
从远端创建新分支
git switch -c dev origin/main
将本地分支推送到远端同名分支(如果远端不存在会自动创建)
git push -u origin 分支名
本地覆盖其他远程
git push origin HEAD:ChangshengKe -f
推送到另一个分支
git push origin 本地分支:远程分支
删除远程分支
git push --delete origin master
git push origin :远程分支
删除本地分支
git branch -d
删除指定提交
git rebase -i HEAD~3
git rebase -i djf0weds
仓库更换名字
git remote rename origin old-origin https://deepinout.com/git/git-questions/109_git_update_origin_after_renaming_the_repository_name.html#:~:text=打开终端或命令行窗口,进入仓库所在的本地目录。 运行以下命令来重命名仓库: git remote rename origin old-origin 这里,我们将原先的 ,remote%20add%20origin%20%3C%E6%96%B0%E4%BB%93%E5%BA%93%E5%9C%B0%E5%9D%80%3E%20%E8%BF%99%E9%87%8C%EF%BC%8C%E6%88%91%E4%BB%AC%E5%B0%86%20%3C%E6%96%B0%E4%BB%93%E5%BA%93%E5%9C%B0%E5%9D%80%3E%20%E6%9B%BF%E6%8D%A2%E4%B8%BA%E6%96%B0%E7%9A%84%E4%BB%93%E5%BA%93%E5%9C%B0%E5%9D%80%EF%BC%8C%E4%BE%8B%E5%A6%82%20https%3A%2F%2Fgithub.com%2Fuser%2Fnew-repo.git%E3%80%82
更换仓库地址
git remote set-url origin http:.....git
将本地仓库首次绑定远程仓库
git remote add origin git@github.com:
分支更换名字
git branch -m
查看当前仓库
git remote -v
删除当前仓库
git remote rm origin
更换新仓库
git remote add origin
重新绑定远程分支
git branch -u origin/keee
比较工作区和暂存区之间的差异。
git diff
比较工作区和最后一次提交之间的差异。
git diff HEAD
比较两次提交之间的差异。
git diff
1. 先查看这个提交的内容,确认为什么是空的
git show 4e3a04f9
2. 比较当前分支和目标分支的差异
git diff HEAD 4e3a04f9
将所有未提交的更改保存到 my_changes.patch 文件
git diff > my_changes.patch
针对所有暂存的文件生成diff
git diff --cached > staged_changes.patch
应用补丁
git apply my_changes.patch

浙公网安备 33010602011771号