Git常用命令

关于提交回滚

git add . 添加所有文件
git commit -m ‘提交代码的注释’ 将代码提交到本地仓库
git commit -a -m ‘提交代码的注释’ add . 和 commit -m 的合体版
git commit --amend ‘新的提交注释’ 修改上一次提交时的注释

HEAD^的意思是上一个版本,也可以写成HEAD~1
如果你进行了2次commit,想都撤回,可以使用HEAD~2
或者你也可以git log,然后直接填写想要去到的commit id

git reset . / git reset HEAD 撤销git add .
git checkout . 删除 没有被 git add 的 改动
git clean -f 删除 没有被 git add 的 新建的文件和文件夹
git clean -n 查看 没有被 git add 的 新建的文件和文件夹

git reset HEAD^ 不删除工作空间改动代码,撤销commit,并且撤销git add .
git reset --mixed HEAD^ 不删除工作空间改动代码,撤销commit,并且撤销git add .

git reset --soft HEAD^ 不删除工作空间改动代码,撤销commit,不撤销git add .
git reset --hard HEAD^ 删除工作空间改动代码,撤销commit,撤销git add . 这个别乱用,用了上一次的提交就没了
git push -f 回滚后需要强制推送,如果依然推送失败,可以选择删除远程分支再推送

关于分支

git log 查看提交的状态
git branch 查看分支
git status 查看分支状态

新建分支

git branch 分支名称 从当前分支拉取新分支
git branch 分支名称 commit_id 从某次commit_id中拉取新分支
git checkout 分支名称 切换分支 / 如果没有本地分支 则从当前分支切出新分支,并切换到新分支
git checkout -b 新的分支名称 新建并切换到新本地分支
git checkout -b 本地分支名 origin/远程分支名 新建本地分支与远程分支关联

分支合并

需要把dev分支的代码合入master
在master分支(需要有master权限,不然push不上去)
git merge dev
git push
在dev分支
git pull origin master
git push
然后在远程提交merge 请求

修改分支名称

git branch -m oldBranchName newBranchName 修改本地分支名称
git branch -D oldBranchName 删除本地分支

git push origin :oldBranchName 删除远程分支
git push origin --delete oldBranchName 删除远程分支

git push origin newBranchName 将本地分支推送到远程
git push --set-upstream origin newBranchName 将本地分支推送到远程并将本地分支与之关联 / 新建远程分支
git push -f 强制推送
git push -u 仓库名 推送到指定仓库,并设置为默认仓库
git push 仓库名 分支名 提交到指定仓库的指定分支(默认为origin 和 master)

暂存工作分支

git stash save “备注” 执行存储时,添加备注,方便查找。不写备注可以直接git stash
git stash list 查看stash列表了哪些存储
git stash show 查看第一个stash中改动的文件
git stash show -p 可以查看第一个stash中所有文件中的改动
git stash show 第几个 显示第几个stash中的改动(从0开始)
git stash apply 第几个 使用第几个stash,并且会保留stash列表中的记录
git stash pop 第几个 使用第几个stash,删除stash列表中的记录
git stash drop 第几个 删除stash列表中第几个的记录(从0开始)
git stash clear 删除stash列表中所有的记录

关于仓库

git remote 查看所有仓库名称
git remote -v 查看所有仓库名称和地址
git remote add 仓库名 仓库地址 添加仓库
git remote rename 仓库名 新仓库名 修改仓库名
git remote set-url 仓库名 新仓库地址 修改仓库地址
git remote rm 仓库名 删除仓库

(ps: 如果同时进行多个仓库的改动,则push时,需要指定仓库,否则全部会push到默认仓库)
如: git push 仓库名 分支名(git push origin master)
git push -u 仓库名 修改默认仓库

  • .git / config 本地配置信息。也可以在这里改仓库和分支信息
 [core]
	repositoryformatversion = 0
	filemode = false
	bare = false
	logallrefupdates = true
	symlinks = false
	ignorecase = true
[remote "origin"]
	url = http://git.com/aaa
	fetch = +refs/heads/*:refs/remotes/origin/*
[remote "old"]
	url = http://git.com/bbb
	fetch = +refs/heads/*:refs/remotes/old/*
[branch "master"]
	remote = origin
	merge = refs/heads/master

关于账号

git config --list 查看当前项目的配置信息
git config user.name 查看用户名
git config user.password 查看密码
git config user.email 查看邮箱
git config --global --list 查看全局配置信息
git config --global user.name “新用户名" 修改全局的用户名

忽略文件

git update-index --assume-unchanged ‘/path/file‘ 设置忽略跟踪
git update-index --no-assume-unchanged ‘/path/file’ 恢复跟踪

  • .gitignore 会提交到远程仓库,用于忽略公共性的文件,例:node_modules
  • .git / info / exclude 不会提交到远程仓库,用于个人配置文件
.DS_Store
node_modules
/dist
/client

# local env files
.env.local
.env.*.local

# Log files
npm-debug.log*
yarn-debug.log*
yarn-error.log*

# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw*

暂时写这么多,以后还会不断新增开发时经常会用的git命令

发现一篇很全很有学习用处的文章 https://blog.csdn.net/mChales_Liu/article/details/104379526

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值