Git的基础使用

owofile Lv5

Git的基础使用

以下是关于Git中几个区域及其作用的表格,包括暂存区、工作区、本地仓库和远程仓库:

区域 描述
暂存区(Stage/Index) 用于暂存待提交的更改。通过git add命令将文件添加到暂存区,可以将其标记为待提交的更改。
工作区(Working Directory) 用户在本地计算机上实际看到的目录和文件。工作区是Git仓库的根目录,其中包含所有版本控制下的文件。
本地仓库(Local Repository) 存储在用户计算机上的实际Git仓库。它包含所有提交的历史记录、分支、标签等信息。
远程仓库(Remote Repository) 存储在远程服务器上的Git仓库。通常用于与他人共享代码或备份代码。可以通过git push命令将本地仓库的更改推送到远程仓库。

这些区域在Git中扮演着不同的角色,它们协同工作以实现版本控制和协作。通过使用暂存区,用户可以临时保存多个版本的更改,并在准备好提交时将它们一起提交到本地仓库。工作区是用户实际看到和操作的文件和目录,而本地仓库则存储了整个Git仓库的历史记录和元数据。远程仓库用于与他人共享代码或备份代码,可以通过git push命令将本地仓库的更改推送到远程仓库。

  1. 工作区:从Git版本库解包出来的实际可编辑的文件,放在磁盘上供我们使用或修改,即我们能直接看到的项目目录。
  2. 暂存区:是一个文件,实际位于.git/index,所以把暂存区也叫做索引(Index),保存了下次将要提交的文件列表信息。通过执行git add命令将工作区中的文件添加到暂存区。
  3. 本地仓库:存储在用户计算机上的实际Git仓库,包含所有提交的历史记录、分支、标签等信息。执行git commit命令将暂存区的文件提交到本地仓库。
  4. 远程仓库:存储在远程服务器上的Git仓库,通常用于与他人共享代码或备份代码。通过执行git push命令将本地仓库的更改推送到远程仓库。

命令:

克隆 远程仓库

1
git clone

检查本地仓库状态

1
git status

将工作区的修改添加到暂存区

1
git add <file>

将暂存区的修改提交到本地仓库

1
git commit -m <msg>

将本地仓库提交到远程仓库

1
git push

查看日志

1
git log

tip:输入q退出

查看提交记录

1
git reflog

tip:使用此方式查看的文件Id比较短

编写:

在工作区撤销指定文件

1
git checkout -- <file>

从暂存区撤销到工作区

1
git reset head .

tip:当你已经将代码add 到暂存区的时候 你想要撤回先要将代码从暂存区撤销回工作区 才能使用checkout撤销文件做出修改

从本地仓库撤销已提交消息

1
git reset --hard

假设您有一个 Git 仓库,里面包含了一些提交记录,并且当前分支位于最新的提交上。现在,假设您误提交了一些代码并且想撤回这个提交。

您可以使用 git log 命令查看提交记录,找到您想要撤回的提交的哈希值或引用,然后运行 git reset --hard <commit-hash> 命令撤回提交。在这个例子中,假设您要撤回最后一个提交,可以使用 git reset --hard HEAD~1 命令。

这个命令的效果是将工作目录和索引恢复到上一个提交状态,并且丢弃所有在重置点之后进行的修改。任何未提交的更改都会被丢弃。

回到之前的版本

首先,使用 git reflog 命令可以查看提交历史记录以及每次操作对应的哈希值。这可以帮助你找到需要回退到的特定提交。接下来,你可以使用 git revert --no-edit <hash> 命令来撤销指定提交的更改,但不会打开编辑器以供编辑提交信息。

例如,假设要回退到哈希值为 <hash> 的提交,你可以执行以下命令:

1
git revert --no-edit <hash>

这将会创建一个新的提交,内容是撤销了哈希值为 <hash> 的提交所引入的更改。该命令不会打开编辑器以进行提交信息的修改,而是使用默认的撤销提交信息。

分支

步骤 命令 描述
1 git init 初始化一个Git仓库
2 git branch 查看当前分支列表
3 git branch <branch-name> 创建一个新的分支,名为<branch-name>
4 git checkout <branch-name> 切换到新创建的分支,名为<branch-name>
5 git merge <branch-name> 将当前分支与指定的<branch-name>分支合并
6 git branch -d <branch-name> 删除名为<branch-name>的分支(如果合并后的分支已被删除)
7 git branch -D <branch-name> 强制删除名为<branch-name>的分支(即使合并未完成)
8 git push origin <branch-name> 将名为<branch-name>的分支推送到远程仓库(如果已关联)

创建本地仓库和远程仓库然后链接仓库进行操作

使用

1
git remote add <name> <url>

关联远程仓库

强制拉取远程仓库的数据

1
git pull --allow-unrelated-histories

如果在强制拉取的时候报错则需要输入当前远程仓库名字和分支

然后将本地仓库内容推送到远程仓库

1
2
3
4
git add .
git commit -m <msg>
#origin 是你链接远程仓库时设置的名称 master是你要推送的分支
git push origin master

tip:如果报错

1
2
3
4
5
6
$ git push
fatal: The current branch master has no upstream branch.
To push the current branch and set the remote as upstream, use
git push --set-upstream origin master
To have this happen automatically for branches without a tracking
upstream, see 'push.autoSetupRemote' in 'git help config'.

则是因为你没有设置你要推送的远程仓库名称和分支

分支:

不同的分支都是独立的,合并分支后才会统一,适合多线程操作

创建分支

1
git branch <分支名称> master

推送分支到远程仓库

1
git push - u origin <分支名称>

创建一个新分支到远程仓库

1
git push origin <new branch name>

删除远程仓库的分支

1
git push origin --delete <old-branch-name>

删除本地分支

1
git branch -d <branch-name>

查看分支

1
git branch

查看所有分支

1
git branch -a

tip:如果你创建了但是没有显示分支,那么就切换你创建的分支再回到主分支就出现了

切换分支

1
git checkout <分支名称>

合并分支

git merge master

如果想要将其他分支的内容合并到master那么按照以下流程操作

1
2
3
git checkout master
git merge frr
git push origin master

或者直接

1
git push

分支改名

1
git branch -m <旧名字> <新名字>

git

一.作用

分布式版本控制工具,主要管理java源代码,xml文件,html页面,可以通过它进行 代码回溯,版本切换,多人协作,远程备份

二.git常用命令

  1. 全局设置

    当安装Git后首先要做的事情是设置用户名称和email地址。这是非常重要的,因为每次Git提交都会使用该用户信息。
    在Git命令行中执行下面命令:
    ◆设置用户信息

    1
    2
    git config --global user.name "zyw"
    git config --global user.email "1024655706@qq.com"

    ◆查看配置信息

    1
    git config --list

    注意:上面设置的user.name和user.email并不是我们在注册码云账号时使用的用户名和邮箱,此处可以任意设置。

  2. 获取git仓库

    1. 在本地初始化仓库 git init(不常用)
    2. 拉去远程仓库(常用)
  3. git基本概念

    1. 版本库 git文件包含配置信息,日志信息,文件信息.
    2. 工作区包含git文件的目录存放开发代码
      • untracked未跟踪(未被纳入版本控制) 创建完文件没有执行git add *
      • tracked已跟踪(被纳入版本控制)
        1. unmodified 未修改状态
        2. Modified 已修改状态
        3. staged 已暂存状态
    3. 暂存区.git目录中的index文件也叫stage
  4. 本地仓库操作命令

    1. git status 查看文件状态

    2. git add 将文件存入暂存区

    3. git reset 将暂存区的文件取消 或者切换到指定版本 git rest –hard

    4. git commit 将暂存区的文件提交到 版本库

      ps:处理完冲突后提交报错 后面跟 -i

    5. git log 查看日志

  5. 远程仓库操作命令

    1. git remote -v 查看远程仓库

    2. git remote add origin 添加远程仓库 将本地仓库和远程仓库进行关联

      ps: git pull origin master

      ps:关联后拉取远程仓库信息会报错,在拉取的后面添加–allow-unrelated-histories

    3. git clone 从远程仓库克隆

    4. git pull 从远程仓库拉取

    5. git push 推送远程仓库

  6. 分支操作命令

    1. git branch 查看分支 -r 远程分支 -a 远程分支和本地分支
    2. git branch [name] 创建分支
    3. git checkout [name] 切换分支
    4. git push [shortName] [name] 推送至远程仓库分支
    5. git merge [name] 合并分支
  7. 标签操作命令(版本)

    1. git tag 查看标签
    2. git tag [name] 创建标签
    3. git push [shortName] [name] 推送至远程仓库
    4. git checkout -b [branch] [name] 检出标签

三.在idea中使用git

  1. 初始化仓库

    1. 本地初始化仓库 去cvs中
    2. 克隆远程仓库 去cvs中
  2. 按照图形化界面提交代码即可

  3. 如果是本地初始化仓库需要拉取 代码在进行提交

    1
    2
    3
    4
    5
    6
    Push rejected
    推拒
    Push to origin/master was rejected
    推到原点/主人被拒绝
    git pull origin master -–allow-unrelated-histories
    git push -u origin master -f
  • Title: Git的基础使用
  • Author: owofile
  • Created at : 2023-11-18 07:05:36
  • Updated at : 2025-04-11 21:18:26
  • Link: https://owofile.github.io/blog/2023/11/18/Git/
  • License: This work is licensed under CC BY-NC-SA 4.0.
Comments
On this page
Git的基础使用