首页 > 其他分享 >常用的Git命令及示例

常用的Git命令及示例

时间:2023-04-14 19:45:19浏览次数:36  
标签:常用 git 示例 仓库 Git 提交 分支

目录

01 git init :初始化一个空的Git仓库

示例:在当前目录下创建一个新的Git仓库

git init

02 git add 将修改添加到Git仓库暂存区

示例:将文件file1.txt添加到Git仓库

git add file1.txt

git add 所有文件

要将全部修改过的文件添加到 Git 仓库中,可以使用以下命令:

git add .

这个命令的含义是将当前目录下(包括子目录)所有修改或新增的文件添加到 Git 仓库的暂存区

03 git commit 将修改提交到Git仓库

示例:将修改提交到Git仓库,附带提交信息"update file1.txt"

git commit -m "update file1.txt"

git add和git commit合并起来,命令格式如下:

git commit -am "commit message"

其中,-a表示把所有已修改或已删除的文件提交到暂存区,-m后面跟着的是提交信息。

需要注意的是,使用该命令时,只会将已经被Git管理的文件提交到仓库中,如果有新建文件还需要使用git add命令将其添加到暂存区。

04 git pull 从远程Git仓库拉取最新的代码

示例:将远程仓库的master分支拉取到本地仓库

git pull origin master

05 git push 将本地代码推送到远程Git仓库

示例:将本地仓库的master分支推送到远程仓库

git push origin master

06 git branch 创建和管理Git分支

新建分支

示例:创建一个新的分支“new-branch”。

git branch new-branch

查看分支

列出所有分支或创建新分支

要查看当前所在的 Git 分支,可以使用以下命令:

git branch

这个命令会列出所有本地分支,用带 * 号的分支表示当前分支,如下图所示:

* main
  dev
  feature

上面的输出结果表示当前所在的分支是 main 分支。如果想查看远程分支的话,可以使用 -r 参数:

git branch -r

如果想查看所有本地分支和远程分支,可以使用 -a 参数:

git branch -a

删除分支

删除本地的一个 Git 分支

要删除本地的一个 Git 分支,可以使用以下命令:

git branch -d <branch-name>

其中 <branch-name> 是要删除的分支名字。使用这个命令删除分支时,需要保证当前不在要删除的分支上,可以先使用 git checkout 命令切换到其他分支上。

如果要强制删除分支,可以使用 -D 参数:

git branch -D <branch-name>

这个命令会忽略掉分支上未合并的修改,强制删除指定的分支。

需要注意的是,删除分支时请注意备份相关文件,并确保该分支上的修改已经合并到主分支或其他分支上,以防止数据丢失。

07 git checkout 切换分支或还原文件

切换分支或撤销修改

示例:切换到分支"dev"

git checkout dev

示例:撤销对文件file1.txt的修改

git checkout file1.txt

08 git merge 合并分支 (不建议)

示例:将分支"dev"合并到当前分支

git merge dev

09 git status:查看Git仓库当前的状态。

示例:查看Git仓库中所有文件的状态。

git status

10 git diff:查看文件的差异。

示例:查看文件“test.py”在工作目录和Git仓库中的差异。

git diff test.py

11 git log:查看Git仓库中的提交记录。

示例:查看Git仓库中所有提交的历史记录。

git log

12 git clone:从远程仓库中克隆代码到本地。

示例:从远程 Git 仓库克隆代码到本地。

git clone https://github.com/your-username/your-repository.git

13 git reset:重置 Git 仓库中的修改记录。

示例:将 Git 仓库中 HEAD 指向的版本 (即最后一次提交) 重置到指定版本。

git reset --hard <commit-id>

commit-id 是 Git 中每次提交所对应的唯一标识符,也叫做 Git 对象名或 SHA-1 校验和。每个 Git 提交都有一个唯一的 40 个字符长度的哈希值,它是根据提交所包含的内容计算出来的,可以用来标识这个提交。

在 Git 中,通过 commit-id 来唯一标识每次修改或提交,并且可以通过 commit-id 来进行版本控制、撤销修改等操作。可以通过以下命令来查看某个分支的全部提交记录和 commit-id:

git log

通过查看 commit-id,可以找到某个提交版本的详细信息,比如提交作者、时间、注释等等,同时也可以通过 commit-id 进行回退、撤销等操作。

需要注意的是,commit-id 是一个长长的字符串,通常我们只需要使用前几位字符就可以了,因为前几位字符一般是唯一的。如果需要查看更详细的信息,可以通过 git show 命令来查看某个具体的提交。

14 git stash:将当前修改暂时保存,并还原到上一个提交状态。

示例:将本地的修改暂时存储,并将工作目录恢复到最后一次提交状态。

git stash save "message"
git stash pop

标签:常用,git,示例,仓库,Git,提交,分支
From: https://www.cnblogs.com/lyn8100/p/17319657.html

相关文章

  • Spring很常用的@Conditional注解的使用场景和源码解析
    你好,我是刘牌!介绍今天要分享的是Spring的注解@Conditional,@Conditional是一个条件注解,它的作用是判断Bean是否满足条件,如果满足条件,则将Bean注册进IOC中,如果不满足条件,则不进行注册,这个注解在SpringBoot中衍生出很多注解,比如@ConditionalOnProperty,@ConditionalOnBean,@Conditi......
  • Git提交代码仓库的两种方式
    目录一:两种本地与远程仓库同步1git远程仓库提交本地版本库操作提交到远程版本库操作1.Git全局设置:2.增加一个远程仓库地址3.查询当前存在的远程仓库5.本地版本库内容提交到远程仓库6.查询远程仓库注意:本地版本库提交到远程仓库用户名密码存放位置远程仓库操作本地仓库与远......
  • 前端常用/不常用插件【想起来才会去更新】
    maptalks支持2d/3d地图渲染及操作,maptalks可支持1w左右图形渲染(再多了就会有一点点卡,和电脑性能也有关系)官网:www.maptalks.org 组件中的组件maptalks.three:可支持three及一些简单数据样式,具体的还没用过maptalks.snap:绘制图形可贴边操作maptalks.arcgistilelayerarcgis......
  • Hadoop - HDFS常用命令
      “hadoopfs(hdfsdfs)文件操作” #查看目录hdfsdfs-ls/#查看目录下所有文件hdfsdfs-ls-R/#创建目录hdfsdfs-mkdir-p/source/data#查看文件或目录大小hdfsdfs-du-h/source#改变文件权限hdfsdfs-chmod-R777/source/data#改变文件......
  • 【Linux】 apt常用安装命令
    在Ubuntu下,apt-get近乎是最常用的shell命令之一了,因为他是Ubuntu通过新立得安装软件的常用工具命令。本文列举了常用的APT命令参数:sudoapt-getcheck#检查是否有损坏的依赖sudoapt-getupdate #更新源sudoapt-getupgrade#更新已安装的包apt-getso......
  • Linux常用命令-个人使用
    Linux常用命令-个人使用本人在centos下常用的命令,其他系统机器不确定是否可以使用1.nmtui命令启动界面改IP信息首先要启动NetworkManager服务,然后运行nmtui命令就可以手动配置网卡信息,贼好用运行nmtui命令2.ls根据文件大小排序ll-hS|grep^-只显示文件且按文件大小......
  • Git GUI 中文文件名乱码
     GitGUI中文文件名乱码  在GitGui界面选择Edit-Options(对应中文编辑-选项),"默认文本内容编码方式"选择"Unicode(UTF-8)"即可                   REFhttps://www.jianshu.com/p/4b61731d0de6......
  • 为github项目添加优秀的自述文件
    sudoapt-getupdatesudoaptinstallnpmnpxreadme-md-generator参考资料:https://github.com/kefranabg/readme-md-generator......
  • linux中systemctl管理go服务 (gin)git部署
    go安装下载 https://golang.google.cn/dl/解压至指定目录,一般到/usr/localsudotar-C/usr/local-xzfgo**.linux-amd64.tar.gz设置环境变量#修改~/.bashrc文件$sudogedit~/.bashrc#在该文件最后一行插入$exportPATH=$PATH:/usr/local/go/bin$source~/......
  • git中 commit 和 pull 的先后顺序问题会产生多余的merge记录
    commit和pull的先后顺序问题最近提交代码,发现一个问题。自己很清楚的记得本次的提交是没有进行合并的。奇怪的死gitlab中的history历史中显示了我对本次进行了Merge合并操作。并且Merge合并操作中显示了很多不是本次对代码的修改。这就很明显了,git自动生成的merge操......