git基本操作

初始化git环境

配置用户

git config --global user.name "Your Name"
git config --global user.email "email@example.com"
注:--global ,对当前用户起作用,如果不加,只针对当前仓库

将当前目录变为git可管理的仓库

git init

将文件提交到版本库

将文件添加到暂存区

git add <file_name>
注:git add . 可以将所有修改文件添加到暂存区,但要注意不需要提交的文件

将暂存区的文件提交到当前分支

gi commit -m"提交说明"

时光穿梭机

查看工作区的状态

git status
注:会有一些简单的状态提示和命令提示

查看修改内容

git diff

查看工作区和版本库文件的区别

git diff HEAD <file_name>

查看提交历史

git log
gitk --all (图形提交历史界面,好像只有window能用)

查看命令历史

git reflog

丢弃工作区的修改

git checkout <file_name> (老版本git)
git restore <file_name> (新版本git)
注:. 语法可以丢弃所有

丢弃暂存区的修改

git reset HEAD <file_name> (老版本git)
git restore --staged <file_name> (新版本git)
注:. 语法丢弃所有

回退到指定的提交版本

git reset --hard <comit_id/HEAD>
注:HEAD 当前版本,HEAD^ 上一版本

远程仓库

配置SSH

  1. 用户主目录下查找.ssh目录,看是否有id_rsa(私钥)和id_rsa.pub(公钥)两个文件
  2. 创建.ssh文件:ssh-keygen -t rsa -C "email@xx.com"
  3. 登录仓库管理,将公钥内容粘贴在ssh配置里

关联远程仓库

git remote add <store_name> <branch_name>

推送最新修改到远程仓库

git push <store_name> <branch_name>
-u (第一次推送将本地分支和远程分支进行关联)
注:如果本地分支已经和远程分支关联,可以省略仓库名和分支名

克隆远程库的数据到本地

git clone <仓库地址>

分支管理

分支基础操作

查看分支

git branch -a

创建分支

git branch <branch_name>

切换分支

git checkout <branch_name>

创建+切换分支

git checkout -b <branch_name>

创建+切换+关联远程分支

git checkout -b <branch_name> <store_name>/<store_name>

合并某分支到当前分支

git merge <branch_name>
--no-ff (采用普通模式合并,会产生一次commit,注意使用-m描述)

将其它分支上的某次提交合并到当前分支

git cherry-pick <commit_id>

删除分支

git branch -d <branch_name>
-D (可以强行删除未被合并过的分支)

查看分支合并图

git log --graph

暂存区操作

将当前修改暂存

git stash

查看存储区内容

git stash list

恢复存储区内容到工作区

git stash apply

删除存储区内容

git stash drop

恢复存储区内容到工作区并删除存储区内容

git stash pop

远程分支

查看远程仓库的信息

git remote
-v (可以显示详细信息)

拉取远程分支代码合并到当前分支

git pull

在本地创建和远程分支对应的分支

git checkout -b <branch_name> <store_name>/<branch_name>

建立本地分支和远程分支的关联

git branch --set-upstream <branch_name> <store_name>/<branch_name>

合并分叉提交

git rebase
注:在本地尝试push发现远程有新的提交,通过pull命令后提交历史产生分叉,将本地push的分叉提交历史整理成直线;
有冲突的情况不适用,无冲突的情况建议使用,减少分叉可以更好的查看分支提交记录

标签管理

新建标签

git tag <tag_name>
注:默认指向HEAD,可以指定commit_id

添加标签描述信息

git tag -a <tag_name> -m""

查看所有标签

git tag

查看标签信息

git show <tag_name>

删除标签

git tag -d <tag_name>

推送标签到远程仓库

git push <store_name> <tag_name>
git push <store_name> --tags (一次推送全部未推送标签)

删除已推送的标签

先删除本地标签
git push <store_name> :refs/tags/<tag_name>

注:本文档只是记录git一些基本命令,如果想了解git使用原理,建议百度廖雪峰的git教程,讲的很不错

posted @   前端泥石流  阅读(22)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 百万级群聊的设计实践
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
点击右上角即可分享
微信分享提示