大厂怎么用Git命令

Git 是一种分布式版本控制系统,它允许团队成员协同工作,同时对同一项目的代码进行修改而不会相互覆盖。对于不了解git的小白,以下是 Git 中一些基本命令的介绍,以及它们的作用和使用方法。

Git 命令及其作用

Git 是一种分布式版本控制系统,它允许团队成员协同工作,同时对同一项目的代码进行修改而不会相互覆盖。以下是 Git 中一些基本命令的介绍,以及它们的作用和使用方法。

1. 初始化仓库

  • git init :在当前目录下创建一个新的 Git 仓库。这会初始化一个名为 .git 的目录,其中包含了所有的版本控制信息。

2. 配置用户信息

  • git config user.name "your name" :设置 Git 用户的名字,用于标识你的提交。
  • git config user.email "you@example.com" :设置 Git 用户的电子邮件地址,同样用于标识你的提交。

3. 克隆现有仓库

  • git clone [url] :克隆一个项目及其整个代码历史到本地。这通常是你开始与他人合作或基于现有项目工作的第一步。

4. 检查仓库状态

  • git status:显示工作目录和暂存区的状态,包括哪些文件已被修改但尚未提交,哪些文件处于暂存状态等。

5. 添加文件到暂存区

  • git add . :将所有更改过的文件添加到暂存区。如果你想只添加特定的文件,可以指定文件名代替 .
  • git add [file] :将指定文件添加到暂存区。

6. 提交更改

  • git commit -m "message" :将暂存区中的更改提交到本地仓库。-m 参数后面跟的是提交信息,应该简洁明了地描述此次提交的内容。

7. 查看提交历史

  • git log :显示所有的提交历史,包括每次提交的作者、日期和提交信息。使用 --oneline 可以简化输出,每条提交信息占一行。

8. 分支管理

  • git branch:列出所有本地分支。
  • git branch [branch-name] :创建一个新的分支。
  • git checkout [branch-name] :切换到指定的分支。如果想创建并立即切换到新分支,可以使用 git checkout -b [branch-name]
  • git merge [branch] :将指定分支的更改合并到当前分支。

9. 远程仓库操作

  • git remote -v:查看远程仓库的信息。
  • git remote add [remote-name] [url] :添加一个新的远程仓库。
  • git push [remote-name] [branch-name] :将本地分支的更改推送到远程仓库。
  • git pull [remote-name] [branch-name] :从远程仓库拉取最新的更改,并自动与本地分支合并。

10. 撤销操作

  • git checkout -- [file] :丢弃工作目录中文件的更改。
  • git reset [file] :取消暂存区中对指定文件的更改,但保留工作目录中的更改。
  • git reset --hard:重置当前分支的HEAD为指定的状态,同时恢复索引和工作树。请注意,此命令将永久删除所有未提交的更改。

11. 获取帮助

  • git help -a :显示所有可用的 Git 命令列表。按 k 向上滚动,j 向下滚动,q 退出帮助界面。

关于代码仓库的进一步说明

  • 代码仓库结构 :每个 Git 仓库都有一个隐藏的 .git 目录,里面存储着所有的元数据和对象数据库,这是 Git 能够追踪版本变化的核心所在。
  • 配置全局设置 :通过 git config --global 命令可以设置全局的用户名和邮箱,这样就不需要在每个仓库中单独设置了。
  • 未跟踪文件 :当 Git 说"untracked files"时,意味着这些文件还没有被添加到版本控制中。你可以通过 git add 命令将它们纳入版本管理。
  • 主分支 :默认情况下,Git 使用 mastermain 作为主分支的名称,这取决于 Git 版本。在这个分支上进行开发是最常见的做法。
  • 查看提交记录 :使用 git log 可以查看项目的提交历史,这对于理解项目的演变过程非常有帮助。
  • 暂存区概念 :暂存区是一个特殊的区域,用来准备即将提交的更改。你可以多次使用 git add 来逐步构建一个合理的提交。

下面记录使用时候有两个问题解决方法:

解决第一个错误:src refspec main does not match any

你当前的本地分支是 master,而你试图推送到远程仓库的 main 分支。你可以选择以下两种方法之一:

方法一:将 master 分支推送到远程仓库的 main 分支

less 复制代码
git push -u origin master:main

方法二:将 master 分支重命名为 main,然后推送到远程仓库

  1. 重命名本地分支为 main

    css 复制代码
    git branch -m main
  2. 推送到远程仓库的 main 分支

    css 复制代码
    git push -u origin main

解决第二个错误:ssh: connect to host github.com port 22: Connection refused

这个错误通常表示 SSH 连接被拒绝,可能是由于以下几个原因:

  1. SSH 密钥未配置:确保你已经生成了 SSH 密钥并添加到 GitHub 账户中。
  2. 网络问题:确保你的网络连接正常,能够访问 GitHub。
  3. 防火墙或代理问题:某些网络环境可能阻止 SSH 连接。

检查和配置 SSH 密钥

  1. 生成 SSH 密钥(如果还没有生成):

    css 复制代码
    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
  2. 查看生成的 SSH 密钥

    bash 复制代码
    cat ~/.ssh/id_rsa.pub
  3. 将公钥添加到 GitHub

    • 登录到 GitHub。(点击头像,继续下面的步骤)
    • 转到 Settings -> SSH and GPG keys
    • 点击 New SSH key,输入标题并粘贴公钥内容。
  4. 测试 SSH 连接

    css 复制代码
    ssh -T git@github.com

    如果一切正常,你应该会看到类似以下的消息:

    vbnet 复制代码
    Hi yourusername! You've successfully authenticated, but GitHub does not provide shell access.

使用 HTTPS 而不是 SSH

如果你不想使用 SSH,可以改为使用 HTTPS 进行推送:

  1. 更改远程仓库 URL 为 HTTPS

    arduino 复制代码
    git remote set-url origin https://github.com/anlici/lesson_git2.git
  2. 推送到远程仓库

    css 复制代码
    git push -u origin main

Git使用还是要自己平时多使用,忘记命令就git help 。特别是在使用 git log、git diff 或者 git show 等命令时,经常会使用到分页器(通常是 less)。在这个分页器中,k 和 j 键用于上下移动。 k 键:向上移动一行。j 键:向下移动一行,q健:退出分页器。这些键的行为类似于许多文本编辑器(如 Vim)中的行为。

后面进行商务项目提交时候你就会发现Git真的很牛掰。摸鱼时候一个上午commit提交3-5次差不多了,让领导知道你在"卖力打工"。

相关推荐
jingshaoqi_ccc7 小时前
GitKraken最后一个免费版本和下载地址
git·github·gitkraken·版本管理工具
乌云暮年7 小时前
Git简单命令
git·gitee·github·batch命令
用户12592654232010 小时前
使用 Docker 搭建 Gitea 并实现 Git HTTP 自动登录
git
一只毛驴12 小时前
谈谈对git stash的理解?
git
长风破浪会有时呀17 小时前
Git 学习笔记
笔记·git·学习
中微子1 天前
Git Rebase 详解:概念、原理与实战示例
git
荔枝吻1 天前
【保姆级喂饭教程】Windows下安装Git Flow
windows·git·git flow
云和数据.ChenGuang1 天前
git中的指令解释
git
小Lu的开源日常1 天前
在 macOS 上设置 SSH 和 Git
git·macos·ssh
eleven_h1 天前
ERROR: Permission to Splode/pomotroid.git deni
git