Git(五):历史提交与远程仓库修改

这篇具有很好参考价值的文章主要介绍了Git(五):历史提交与远程仓库修改。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

4、查看提交历史

4.1 查看日志详细信息

4.2 查看某次提交信息

4.3 查看更改

5、撤销操作

5.1 取消暂存的文件

5.2 撤销对文件的修改

5.3 撤销远程记录

6 远程仓库的使用

6.1 查看远程仓库

6.2 添加远程仓库

6.3 从远程仓库中抓取与拉取

6.4 同步远程仓库

6.4.1 远程推送

6.4.2 同步远程

6.5 查看远程仓库

6.6 远程仓库的移除与重命名

6.6.1 代码退回


4、查看提交历史

4.1 查看日志详细信息

    在提交了若干更新,又或者克隆了某个项目之后,通过 git log 命令回顾提交历史。

# 按提交时间列出所有的更新,最近的更新安排在最上面
$ git log
# 会列出每个提交的:
# SHA-1 校验和、提交作者和电子邮件地址、提交时间以及提交说明
# 简易查看 

    常用的有:

  • -p 用来显示每次提交的内容的差异;

  • -2 仅显示最近两次的提交(除了显示基本信息之外,还附带了每次 commit 的变化);

  • --stat 查看每次提交的简略的统计信息: 列出所有被修改过的文件、有多少修改文件以及修改文件的那些行被移除或者添加、总结。

git查看远程提交记录,Git,git

  • --pretty 指定使用不同于默认格式的方式展示提交历史: 内建的子选项:如 oneline :将每个提交放一行显示;还有 shortfull 和 fuller

git查看远程提交记录,Git,git

  • format 定制显示的记录格式:
# --pretty=format 列出了常用的格式占位符写法及其代表的意义
$ git log --pretty=format:"%h - %an, %ar : %s"
  • --graph 添加了一些ASCII字符串来形象地展示你的分支、合并历史:

git查看远程提交记录,Git,git

4.2 查看某次提交信息

    使用git show命令查看某一次提交详细信息。 git show命令采用SHA-1提交ID作为参数:

$ git show fb10c87d1c2164442a3280133609a31e12e47889

git查看远程提交记录,Git,git

  • + / - : 表示添加 / 删除;

4.3 查看更改

    通过运行 git diff 命令来回顾文件的更改:

$ git diff

git查看远程提交记录,Git,git

5、撤销操作

在任何一个阶段,都很有可能想要撤销某些操作,通过以下基本命令进行实现(有些撤销操作是不可逆的):

$ git commit --amend

    该命令会将暂存区的文件提交,如果自上次提交依赖未进行任何修改,那么快照会保持不变,而此时修改的只是提交信息。

    当提交后忘记暂存某些需要的修改,可以这样操作:

$ git commit -m 'initial commit'
$ git add forgtten_file
$ git commit --amend

    最终只会有一个提交,第二次提交将代替第一次提交的结果。

5.1 取消暂存的文件

    当我们修改了两个文件并且想要将它们作为两次独立的修改提交,但是却意外地操作了 git add * 暂存了它们两个,这个时候怎么进行取消暂存呢,通过 git status 命令提示进行:

git查看远程提交记录,Git,git

    在 “Changes to be committed” 文字正下方,提示使用 git restore --staged <file>... 来取消暂存。 所以,我们可以这样来取消暂存 noadd.txt 文件:

$ git restore --staged <file name>

git查看远程提交记录,Git,git

5.2 撤销对文件的修改

    当不想保留修改了的文件的时候,通过 git checkout -- filename 对修改进行恢复还原(或者 clone 完时、刚放入工作目录时)(恢复到最近的一次 add 或 commit):

$ git checkout -- filename

git查看远程提交记录,Git,git

可以清楚的看到,在第一次将文件 noadd.txt 进行提交后进入文件跟踪才可以进行修改撤销操作,当对跟踪的文件进行内容修改之后,进行提交 git addgit commit 后,通过 git checkout -- noadd.txt 将修改后的文件进行撤销恢复到最近的一次提交操作当中。

  • 在 Git 中任何已提交的东西几乎总是可以恢复的。

  • 甚至那些被删除的分支中的提交或使用 --amend 选项覆盖的提交也可以恢复。

然而,任何你未提交的东西丢失后很可能再也找不到了。

5.3 撤销远程记录

    通过 git log 命令对所有提交的记录进行查看,选出指定的 commit ID,利用 git rebase -i 及其随后的 ID 进行对提交记录的指定删除撤销:

$ git rebase -i e10938c

    触发以上命令将会进入指定提交记录的文件内容,将 pick 更改为 drop 即可对指定的提交记录删除撤销,通过 wq 进行保存:

git查看远程提交记录,Git,git

6 远程仓库的使用

6.1 查看远程仓库

    查看已经配置的远程仓库服务器,可以运行 git remote 命令,它会列出指定的每一个远程服务器的简写,也可以指定选项 -v,会显示需要读写远程仓库使用的 Git 保存的简写与其对应的 URL。Git 指定的默认仓库服务器的名字:origin

$ git remote -v
origin  https://github.com/2**2/git-demo0823.git

git查看远程提交记录,Git,git

6.2 添加远程仓库

运行 git remote add <shortname> <url> 添加一个新的远程 Git 仓库,同时指定一个可以轻松引用的简写:

$ git remote add sn https://github.com/**/git-demo1024.git

git查看远程提交记录,Git,git

    现在可以在命令行中使用字符串 sn 来代替整个 URL,例如,想拉取仓库中有但目前没有的信息,可以运行 git fetch sn

$ git fetch sn

git查看远程提交记录,Git,git

    现在 test 分支可以在本地通过 sn/test 访问到。

6.3 从远程仓库中抓取与拉取

    从远程仓库中获得数据,可以执行:

$ git fetch [remote-name]

    这个命令会访问远程仓库,从中拉取所有还没有的数据。执行完成后,将会拥有那个远程仓库中所有分支的引用,可以随时合并或查看。

    clone 仓库会自动给其添加为远程仓库并默认以 origin 为简写。所以,git fetch origin 会抓取克隆(或上一次抓取)后新推送的所有工作。

git fetch 命令会将数据拉取到本地仓库 - 它并不会自动合并或修改当前的工作。

运行 git pull 通常会从最初克隆的服务器上抓取数据并自动尝试合并到当前所在的分支。

6.4 同步远程仓库

git push [remote-name] [branch-name]。 当你想要将 master 分支推送到 origin 服务器时(默认),那么运行这个命令就可以将所做的备份到服务器:

$ git push origin master
# 推送到远程服务器
$ git push origin master --force

1、只有当你有所克隆的服务器的写入权限,并且之前没有人推送过,这条命令才能生效。

2、当你和其他人在同一时间克隆,而别人先推送到上游之后你再推送,此时你的推送就会被拒绝,你必须先将他们的工作拉取下来并合并到你的工作之后才能推送。

6.4.1 远程推送

# add commit remote  push

# 本地仓库暂存,把当前目录下所有的文件及子目录都添加进行管理
# $ git add [filename]
$ git add .  

# 将本地仓库暂存区的文件提交到本地仓库
$ git commit -m 'C++编写规范.md'

# 将本地仓库和远程仓库相关联
# remote : 远程仓库的别名
# url : 新建仓库的链接
$ git remote add origin [url]

$ git push

6.4.2 同步远程

    执行git pull命令以将其本地存储库与远程存储库同步:

$ git pull

#################################################################
remote: Counting objects: 3, done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.
From http://git.oschina.net/yiibai/sample
   51de0f0..01c5462  master     -> origin/master
Auto-merging main.py
CONFLICT (content): Merge conflict in main.py
Automatic merge failed; fix conflicts and then commit the result.

6.5 查看远程仓库

    如果想要查看某一个远程仓库的更多信息,可以使用 git remote show [remote-name] 命令。 如果想以一个特定的缩写名运行这个命令,例如 origin,会得到像下面类似的信息:

$ git remote show origin

git查看远程提交记录,Git,git

列出远程仓库的 URL 与跟踪分支的信息:

1、正处于 test 分支;

2、如果运行 git pull,就会抓取所有的远程引用,然后将远程 test 分支合并到本地 test 分支。

3、也会列出拉取到的所有远程引用:

        哪些远程分支不在你的本地,哪些远程分支已经从服务器上移除了,还有当你执行 git pull 时哪些分支会自动合并。

6.6 远程仓库的移除与重命名

    如果想要重命名引用的名字可以运行 git remote rename 去修改一个远程仓库的简写名:

$ git remote rename gs newgs

git查看远程提交记录,Git,git

    如果因为一些原因想要移除一个远程仓库,可以使用 git remote rm :

$ git remote rm sn3

git查看远程提交记录,Git,git

6.6.1 代码退回

$ git reset --soft(hard) commit_id

git查看远程提交记录,Git,git文章来源地址https://www.toymoban.com/news/detail-709148.html

到了这里,关于Git(五):历史提交与远程仓库修改的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 怎么使用Git查看项目中代码的提交历史记录?

    怎么使用Git查看项目中代码的提交历史记录? 可以在git上使用下面这段指令 在git上执行完之后,就可以在桌面上看到打印出来的日志文件了 Readme.log日志文件如下: 对指令中的代码进行解释: git log 是git导出指令 format 是需要导出的数据格式,这里是代码提交时间、提交人员

    2024年02月12日
    浏览(51)
  • vscode插件——git分支管理、查看log提交的历史记录

    不辜负曾经那份热爱 当你觉得vscode用的不顺手时,就多找些插件叭❤ 一、Git Graph 1. 安装 选择红框的\\\"扩展\\\",搜索\\\"Git Graph\\\",直接安装即可。 2. 使用 打开源代码管理菜单,会发现右上角有个小分支图标,直接点击打开Git Graph。也可以直接从底部的Git Graph打开。 打开后,可查

    2024年02月11日
    浏览(75)
  • git查看和修改项目远程仓库地址

    项目代码仓库迁移,需要本地更新远程仓库地址,进行代码同步与提交。 [1] https://git-scm.com/docs/git-remote

    2024年02月04日
    浏览(48)
  • 查看git所有分支的历史修改中改过某段代码的记录。

    如果您要查看 Git 所有分支的历史修改中改过某段代码的记录,可以使用 Git 的 git log 命令和 -S 选项以及你要查找的代码段。 下面是具体的操作步骤: 执行以下命令以在所有分支上搜索代码段的内容: 在上面的命令中, -S \\\"your code snippet\\\" 选项表示搜索某个代码片段, --all 选

    2024年02月11日
    浏览(50)
  • 将项目复制到新电脑之后, 无法通过git 进行拉取代码/查看历史提交记录等操作

    将项目代码整体打包到新环境(新电脑), 在idea/pycharm下载好git相关插件并打开项目之后, 通过git拉取代码失败(gitlab/git/gtee) 最近因工作原因需要讲电脑上的代码迁移到新电脑上, 但是将idea以及git插件等配置好之后, 打开项目, 发现无法查看之前的提交记录, 即使点击刷新也无法查

    2024年02月04日
    浏览(68)
  • Visual Studio常用功能的设置(1)---安装插件、修改字体、查看历史记录、git diff

    (1)使用vs自带下载安装渠道 Visual Studio 的插件一般都需要下载之后,关闭VS,然后就会自动安装了 通过这个方式下载可能很慢,可以通过直接下载的方式 (2)直接去Extensions market 下载 https://marketplace.visualstudio.com/ 通过这种方式,需要先下载插件 关闭visual studio,然后点击安

    2024年02月05日
    浏览(51)
  • vscode查看git提交(commit)的记录,及更新当前分支的内容,暂存本地库,提交远程库

    使用 Git Graph插件 ,可以查看git log的不同分支历史提交记录以及每个开发者一次性提交了哪些文件 使用 博客来源:https://www.panziye.com/java/web/3600.html 按如下选择,即可更新内容 将更新后的文件,且需要提交本地库的文件点击 + 按钮 按如下选择 过后会提示要输入提交信息,按

    2024年02月11日
    浏览(62)
  • Git - 查看 commit 提交历史

    查看提交历史 在提交了若干更新,又或者克隆了某个项目之后,如何查看提交历史 官方栗子 运行下面的命令获取该项目: 运行 git log 命令 可以获取到的信息 不传入任何参数的默认情况下, git log 会按 时间先后顺序 列出所有的提交,最近的更新排在最上面 会列出每个提交

    2024年02月06日
    浏览(48)
  • Git教程学习:04 查看提交历史

    在提交了若干更新,又或者克隆了某个项目之后,我们想回顾下提交历史,可使用 git log 命令。 以\\\"simplegit\\\"项目作为示例。运行下面的命令获取项目: 不传入任何参数的默认情况下, git log 会按时间先后顺序列出所有的提交,最近的更新排在最上面。这个命令会列出每个提交

    2024年01月20日
    浏览(42)
  • Git系列之修改历史提交信息

    比如我这里有三次提交 使用命令: 当使用 git rebase -i HEAD~3 时, git log 查看提交只有三条的话会报 fatal: invalid upstream \\\'HEAD~3\\\' 上说的这个错误。 注意 :这里显示的顺序其实是倒序。最新的提交在最下面,最老的提交在最上面。 这里把我们要修改的commit,这里是倒数第二次的提

    2023年04月09日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包