在以下代码中遇到合并冲突

faced a merge conflict in this following code

为什么会发生冲突?我需要更多解释(澄清)并且不知道我是否有权在堆栈溢出中这样问,它更侧重于 Git 我知道一些基本信息。

public static void Main(string[] args)
{
    const string defaultPhrase = "Did you know that ";
    Console.WriteLine("Welcome to animal facts");
<<<<<<< HEAD
    Console.WriteLine("Fish are the best");
    Console.WriteLine(defaultPhrase + "fish can breathe underwater?");
=======
    Console.Write("What animal would you like to know about? ");
    string userChoice = Console.ReadLine();
    if( userChoice.ToLower() == "hedgehog" )
    {
        Console.WriteLine(defaultPhrase + "hedgehogs fear balloons?");
}
>>>>>>> user_input_feature
}

1.为什么会发生冲突? 您需要了解版本和存储库的概念。简而言之,这是所有开发人员将代码库检出(获取)到本地机器并在其上工作的常见位置。

让我们在时间线上举个例子。

  • 09 AM:A 和 B 获取 file.txt
  • 10 AM:A 在第 22 行添加他的文本 "Hello World" 并且 检查存储库中的更改。
  • 11 AM:B 将她的文本 "Hi World" 添加到第 22 行。

每当 B 尝试签入代码时,她都会遇到冲突错误,因为 A 和 B 正在使用相同的版本,但在 A 签入后,B 正在使用的版本变成了旧版本。

2.Explain 如何解决一般冲突。 始终使用最新的代码副本。养成每天更新代码库的习惯。要解决此问题,您必须在本地代码库中手动修复它(进行更新后)并提交代码。

3.Rewrite 下面的代码,以便解决冲突,以考虑到代码目的的方式。 自己动手,因为你是最了解要求的人。