能让我在团队中从事项目的最小git命令集是什么
伙计们,我是计算机科学大学一年级的学生,对编程和git还不熟悉。我正在和另外三个人一起做一个学校项目 我试着看了一些git教程,但它们很长,细节太多。我想问你们关于git命令的最小集合的问题,这样我就可以开始这个项目了 以下是我到目前为止所知道的关于如何开始该项目的工作能让我在团队中从事项目的最小git命令集是什么,git,github,version-control,Git,Github,Version Control,伙计们,我是计算机科学大学一年级的学生,对编程和git还不熟悉。我正在和另外三个人一起做一个学校项目 我试着看了一些git教程,但它们很长,细节太多。我想问你们关于git命令的最小集合的问题,这样我就可以开始这个项目了 以下是我到目前为止所知道的关于如何开始该项目的工作 要开始这个项目,我首先需要git clone 假设现在我在主分支上,我需要通过git checkout-b 在一些编码之后,我git add.如果它准备好提交,我git commit然后最后git push 所以这里是我的第一个
git clone
git checkout-b
git add.
如果它准备好提交,我git commit
然后最后git push
git commit-amend
还是git commit
?我知道,git commit-amend
允许您将阶段性更改与以前的提交相结合,而不是创建一个全新的提交。因此,我不确定这两个提交是否是关于同一功能的实现,我是否应该将它们结合起来
如果我的团队中有人在回购协议中做了一些更改,我需要将本地主机与远程主机同步,我做了一些研究,我知道可能有两种方法可以做到这一点
一种方法是
git checkout master
切换到master分支git pull
获取最新代码git branch-b
创建跟踪要使用的主机的分支git fetch
git签出主机
git重置-硬原点/主原点
git分行-b
这是我的第二个问题,这两种方法正确吗?它们是相同的吗?所以,你们能为我的本地主机和远程主机的同步提供一些其他方法吗?Ad 1:这两种方法都是可能的,这取决于与您合作的团队更喜欢的做法。有些团队更喜欢每个功能进行一次提交,有些团队更喜欢较小的提交,每个提交都会在功能的实现过程中引入一个独立的逻辑步骤
Ad 2:我不明白这两种方法的最后一步是如何与更新主分支相关的
git pull
是git fetch
+git merge
,但是重设--硬的
也是可能的-但是一定要检查工作副本中没有任何更改,它们将完全丢失。主机同步后,可以git-rebase
所有尚未推送的功能分支,以将新主机包含在其中。Ad 1:这两种方法都是可能的,这取决于与您合作的团队更喜欢的实践。有些团队更喜欢每个功能进行一次提交,有些团队更喜欢较小的提交,每个提交都会在功能的实现过程中引入一个独立的逻辑步骤
Ad 2:我不明白这两种方法的最后一步是如何与更新主分支相关的
git pull
是git fetch
+git merge
,但是重设--硬的
也是可能的-但是一定要检查工作副本中没有任何更改,它们将完全丢失。主机同步后,可以git-rebase
所有尚未推送的功能分支,以将新的主机包含在其中。我只提几点,您可能会发现它们很有用。在处理一个功能时,我倾向于创建多个提交,然后使用交互式重基对它们进行修改。Interactive rebase是一个非常有用的命令,它可以做很多事情,比如重新排序提交、更改提交消息等等
另一个可能有用的命令是git reflog
。您可以使用返回到项目的特定状态,以防出现问题
在git中,有多种方法可以做同样的事情。我使用以下一组命令同步我的回购-
git获取原始主机
git重新基准原点/主原点
使用
rebase
时,必须确保工作目录是干净的。有时,您可能会在使用rebase
时遇到合并冲突,您必须解决这些冲突。还有其他方法可以同步本地存储库,但我通常使用上面提到的方法。我只提几点,您可能会发现它们很有用。在处理一个功能时,我倾向于创建多个提交,然后使用交互式重基对它们进行修改。Interactive rebase是一个非常有用的命令,它可以做很多事情,比如重新排序提交、更改提交消息等等
另一个可能有用的命令是git reflog
。您可以使用返回到项目的特定状态,以防出现问题
在git中,有多种方法可以做同样的事情。我使用以下一组命令同步我的回购-
git获取原始主机
git重新基准原点/主原点
使用
rebase
时,必须确保工作目录是干净的。有时,您可能会在使用rebase
时遇到合并冲突,您必须解决这些冲突。还有其他方法可以同步本地存储库,但我通常使用上述方法。不幸的是,这个问题实际上相当广泛。你可能会在这里得到一些简短的回答,但在我看来,这会对你造成伤害。Git是一个非常复杂的工具,如果你不知道你在用它做什么,很可能你稍后会回来说“嘿,伙计们,我遵循了这个快速教程a