Git 是一种版本控制系统,而 Github 是一个基于 Git 的代码托管平台,我需要复习它们
你是谁?
我是一名大学生,在IT创业公司做实习生。
由于经常在業務中遇到git操作的困难,所以我打算温习一下。
这篇文章所提供的信息
-
- 以下についてふわっとわかる
git branch
git switch
git merge
开始准备
-
- 在 GitHub 上创建仓库
我将其命名为 git_test
https://github.com/kajiyai/git_test
在本地进行 git clone
创建一个文件,然后进行 add、commit
我将内容写入 1.txt 文件中:“初次尝试写入”
git push
会要求输入用户名和密码
密码可以在个人资料的设置>开发者工具中创建个人访问密钥,然后输入即可通过验证。

当前情况
远程和本地均如下
分支
- master
提交
- 1.txt


Git log的发音
提交 <哈希值> (本地分支 -> 远程分支)。
提交者:电子邮件
提交创建时间
HEAD 是指向当前所在的提交的指针。
詳細內容,請參考以下所介紹的文章。
请提供中文的语义预训练模型或详细指导,以便我能更好地理解您的要求并提供准确的中文翻译。
情境1:一位厉害的叔叔通过远程操作提早完成分支
首先
在远程上,快乐老人从主分支合并到了greatman1分支。
我被一个重要的男士告诉要从这个分支再切出一个分支来进行工作!他要求分支的名字要容易理解!
作业内容是通过电子邮件告知创建一个名为”2.txt”的文件,然后在文件中写上”尝试写第二次”。
总体的流程如下所示。
-
- 大人您好,我要从master分支创建一个名为greatman1的新分支。
-
- 我要将greatman1分支拉到本地。
-
- 我要从greatman1分支创建一个名为text2的新分支。
-
- 我要创建一个内容为”2回目かいてみた”的”2.txt”文件。
-
- 我要推送text2分支。
-
- 我要发起一个pull request。
-
- 大人您好,请您检查并提出意见。
-
- 我会进行修正。
- 大人您好,请您进行合并。
步骤1:一位厉害的大叔从主分支(master)创建一个名为greatman1的分支。

这个时候在本地尝试运行 git log

步骤2:从本地获取greatman1分支。
我在这里不小心在本地切换到了名为greatman1的分支(与远程分支同名),并尝试从远程拉取了内容。Git在推送时会发生错误,如果远程和本地的完整历史记录不一致。判断历史记录是否一致的方法是使用提交的哈希值(可能是这样)。因此,我现在想直接将远程分支带到本地。于是我运行以下命令:
# ローカルにリモートの状態を反映させます
$ git fetch


好的,现在开始将远程的greatman1分支创建到本地。
请 查看(https://qiita.com/bitarx/items/ad47c9b91ae9c8272b3f) 以获取参考。
由于”checkout”命令的功能被分离为”switch”命令和”restore”命令,所以尽量使用”switch”命令。
# リモート
git switch -c greatman1
步骤3:从greatman1分支创建一个名为text2的新分支。
看来在Git中,在创建分支的时候关于自己在哪个分支的情况似乎很重要。所以在用git branch命令确认自己当前所在的位置后再创建分支。

# 今いるブランチを確認
git branch
# text2ブランチを新たに作成
git switch -c text2
步骤四:创建文本文件
# エディタ(vscodeなど)で2.txtファイルを作成し、保存する
# 一応、今いるブランチを確認
git branch
# text2ブランチにいることを確認し、add,commit
git add 2.txt
git commit -m "にかいめかいてみまし
步骤五:将文本文件推送
在第四个步骤中,创建了一个名为2.txt的文件并进行了提交。我想要将这个提交推送到远程。当前正在操作的分支名字是text2。尽管这个分支在远程上不存在,但是在推送的时候可以通过指定想要创建的远程分支名字来创建。通常情况下,会复用当前正在操作中的分支名字。
# git push origin <リモートブランチ名>
git push origin text2

当你访问GitHub页面时,会出现一个显示表示像上面的图片被推送的提示。

请用中文把以下内容进行释义,只需要提供一种选项:
现在还创建了一个以前没有的名为text2的分支。
步骤6:创建拉取请求
Pull Request是请求拉取(pull)的操作。它用于主张自己所编写代码的正确性。
请点击下方的图像(再次显示),按下绿色按钮(比较&pull请求),对修正内容进行书写。

在下面的屏幕上显示,并留下标题和评论。
由於可以在這裡指定要合併的分支,所以我們將其設為greatman1。請注意,拉取請求和提交是不同的事情。

步骤7:受到厉害的大叔责备
一个重要的先生看着我的拉取请求,向我开口说话。
大叔,请问我提醒您”请把我写的第二次邮件确认一下”,您查看了邮件吗?
我写了一篇文章叫「第二次尝试」。我很努力地写了,但是不好吗?
“哇,老板真厉害啊,原来是用汉字写的,把“第二次”改成“第二回”吧。”
我(装作)是的(翻白眼)
只有一个账户我无法扮演一个了不起的老爷爷角色。
我并不认为任何批评或评论都是抱怨。这只是一个比喻而已。
步骤8:进行修正
我将按照那位了不起的老先生所说的进行修正。
# ブランチの確認
git branch
# vscodeで2.txtファイルの修正
git add 2.txt
git commit -m "えらいおじさんのいうとおりにしました"
git push origin text2

步骤9:有经验的男士进行合并
厉害的大叔看着我的修正,满意地点头并合并了它们。
额外赠品
origin是什么来着?
Git在远程存储库上为默认名称的事情
参考:https://reasonable-code.com/git-origin/
请参阅:https://reasonable-code.com/git-origin/
每次使用git进行push时都要输入密码太麻烦了。
通过将访问令牌复制粘贴到.env文件中来解决了该问题。
希望删除远程分支时。
创建这篇文章时使用了。
我认为通常的开发中,会删除已发布功能的远程分支。