大厂怎么用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次差不多了,让领导知道你在"卖力打工"。

相关推荐
唔知小罗1 小时前
git config是做什么的?
git
不是鱼6 小时前
新人程序猿必备的git技能(超实用基础版)
git·github
Exclusive_Cat10 小时前
Git的使用(基础语句)
git
江上清风山间明月10 小时前
git撤销、回退某个commit的修改
git·commit·版本·撤销·回退·特定
cui_win10 小时前
Redis高可用-主从复制
redis·git·github·主从复制·哨兵
谎言西西里13 小时前
Git入门指南:掌握基本概念与日常操作
git·github
程序员buddha15 小时前
git版本工具使用教程
git
tian-ming20 小时前
技术栈2:Git分布式版本控制工具
git
算你狠 - ZGX21 小时前
Git - 日志
git