git 常用命令

本文详细介绍Git的基本使用流程,包括从远程仓库克隆代码、查看分支、提交修改等内容。此外还介绍了如何处理工作中的常见问题,如修复bug、版本回退等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用git步骤

//从远处仓库clone代码,远程仓库默认名字叫origin,可以是http方式,也可以是SSH方式
$ git clone https://github.com/mengguagua/demoVue.git

//查看当前分支
$ git branch

//指定远程分支到本地,例如dev分支
$ git checkout -b dev origin/dev  

//修改文件后,查看需要add的文件
$ git status

//add . 意思是把修改全部add到暂存区,或者在后面指定需要add的文件名
$ git add .

//将暂存区的修改都提交
$ git commit -m "修改说明" 

//有时候修改说明内容打错了,可以使用这个命令来修改说明内容
$ git commit --amend

//不管是不是add到暂存区的,只要修改了就提交
git commit -a -m "修改说明"       

$ git pull origin dev    //从远程仓库的dev分支拉取代码并合并。git pull是git fetch和git merge两个步骤的结合。

//有时pull报错,可能是要指定本地dev分支与远程origin/dev分支的链接
$ git branch --set-upstream-to=origin/dev dev 

//将修改推送要远程仓库的的指定分支,例如dev。第一次推送,远程仓库为空时加-u
$ git push origin dev

修复bug步骤

//假设在dev分支上工作,工作到一半需要去master分支修复一个bug
//把当前工作内容“存储”起来,当前为dev分支
$ git stash

//或者模块就只有自己在开发的,可以把dev分支add . 然后 push 到远程仓库,再切换master去修复bug

//切换到master分支,并在master分支上建立用来解决问题的分支issue-1
$ git checkout master
$ git checkout -b issue-1

//修改bug,提交文件
$ git add readme.md 
$ git commit -m "fix bug issue-1"

//切换到master分支,合并刚刚做bug修复的分支
$ git checkout master
$ git merge --no-ff -m "merged bug fix issue-1" issue-1 //--no-ff:指定不用fast方式,可以不加,issue-1是要合并的分支名

//bug修复完成,回到之前的工作中
$ git checkout dev

//查看刚刚“存储”的内容
$ git stash list

//回复“存储”的内容
$ git stash pop

回退版本

//回退到上一个修改版本,上两个是HEAD^^,上十个是HEAD~10
$ git reset --hard HEAD^

//回退后想前进,则查看版本日志reflog,通过指定 commit id 来前进到最新一个版本(id可以不写全,git会自动匹配)
$ git reflog

//$ git log --pretty=oneline //查看当前以及之前的版本日志

//$ git log --pretty=oneline --abbrev-commit   //查看历史commit id

//根据 id 前进到指定的修改版本

$ git reset --hard 4beeea

打标签

//打标签。先切换到要打标签的分支,然后打标签
$ git tag v1.0
//查看标签
$ git tag
//删除标签
$ git tag -d v1.0
//推送某个标签到远程
$ git push origin v1.0
//一次性推送全部尚未推送到远程的本地标签
$ git push origin --tags
//删除以及推送的远程标签,要先删本地,再删远程
$ git tag -d v1.0
$ git push origin :refs/tags/v1.0

别名

//添加别名,例如把status 简写成st ,这样就可以使用 git st 来查看
$ git config --global alias.st status

其他

换行符设置

git config --global core.autocrlf input
git config --global core.safecrlf true

仓库当前的状态
git status  
    1)Untracked files → 文件未被跟踪;
    2)Changes to be committed → 文件已缓存,这是下次提交的内容;
    3)Changes bu not updated → 文件被修改,但并没有添加到缓存区。

git branch //查看现有分支

git branch dev //创建分支dev

git checkout dev //切换分支

git checkout -b dev //以上两句可以合并为一句

git branch -d dev //删除分支

git merge dev //合并分叉,合并前先checkout切换到master或者dev,作为当前分支

查看远程仓库信息
$ git remote -v

生成ssh kye
ssh-keygen -t rsa -C "xxx@gs.com"

连接ssh
ssh -T git@gaocc@gsoms.com

附:比较好理解的教程 https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值