问题 为什么要检入称为'commit'的文件?


检查源控制存储库(如git,mercurial或svn)中的文件的行为称为a 承诺。有谁知道称它为背后的原因 承诺 而不仅仅是 报到

英语不是我的母语,所以它可能是一些语言我不太了解她,但我实际上是在做什么呢? (希望我不是犯罪,但你永远不会知道。)

它是否意味着“托付保存”?它与事务相关(在事务结束时提交)吗?


7914
2017-09-20 10:18


起源



答案:


“提交”一词也意味着保护某些东西以供将来使用或保存。例如,“他将密码提交给了内存。”当您“提交”您的更改时,您将锁定它们,因为它们现在用于将来保存。


13
2017-09-20 10:22





还要考虑版本控制存储库是一种参考,例如数据库是参考。
而这个词 承诺 来自 数据管理,使一组暂时的变化永久化。
(注意,对git来说很有意义,你可以在其中添加对索引的暂定更改 git add,然后在回购中记录它们 git commit

这些版本控制系统的上下文中的提交是指 将源代码的最新更改提交到存储库,并将这些更改作为存储库的主要修订的一部分。
  因此,当其他用户做一个 UPDATE 或者a checkout 从存储库中,他们将收到最新提交的版本,除非他们指定他们希望在存储库中检索以前版本的源代码。


5
2017-09-20 10:36





盲目地从我的macs lex中复制过,不能充分解释它吗?

commit |kəˈmɪt|
verb ( commits, committing, committed ) [ with obj. ]
1 ...
3 (commit something to) transfer something to (a state or place where it can be kept or preserved): he composed a letter but didn't commit it to paper | she committed each tiny feature to memory.
• consign (someone) officially to prison, especially on remand: he was committed to prison for contempt of court.
• send (a person or case) for trial in a higher court: the magistrate decided to commit him for trial .
• send (someone) to be confined in a psychiatric hospital.
• refer (a parliamentary or legislative bill) to a committee.

1
2017-09-20 12:21





它主要用于区分集中式VCS(如Subversion)与分布式VCS之间的差异。集中式系统使用“签出”和“签入”术语。这些术语有助于表明存在一些控制这些操作的中央集线器或代理。它具有可以打开然后关闭的“保险箱”的内涵。当文件中涉及锁定时尤其如此,Subversion / TFS等也是如此。

DVCS更喜欢更多不可知的术语,如“提交”和“更新”,因为它举例说明这些操作中没有中央代理。

“检入”某些东西也会让人感到困惑,但仍需要将其“推”到远程服务器上。 “签入”特别是在VCS中,它具有端到端流程的内涵。在DVCS中当然不会是这样。

您可以在DVCS中创建一个名为“check in”的命令别名,该别名执行提交然后执行推送。例如。


-4
2017-09-20 15:36



这完全是假的。 CVS和Subversion这两个最受欢迎的集中式系统几乎都使用术语“提交”。 - user4815162342
Subversion仅保留提交,因为它是直接CVS替换。 TFS称其为入住和结账。我不明白这是多么“完全错误”。这个问题需要一个答案来解释各种术语之间的微妙差异(就英语而言),这个答案提供了这个答案。 - nbevans
仅颠覆 保留 承诺  - 这正是我的观点,“提交”一词实际上是由集中式VCS使用了几十年。您的回答声称DVCS引入了“提交”一词,以区分旧的“登记入住”,但情况并非如此。 - user4815162342
我在哪里声称DVCS“引入”了术语提交?! - nbevans
你的前两句话暗示声称相当强烈。你说术语提交是“[用于]主要用于区分集中式VCS(如Subversion与分布式VCS)之间的差异”。事实并非如此,因为术语“提交”在分散系统存在之前已经确定使用,并且仍然在集中式系统中使用,具有与以往相同的含义。 - user4815162342


答案:


“提交”一词也意味着保护某些东西以供将来使用或保存。例如,“他将密码提交给了内存。”当您“提交”您的更改时,您将锁定它们,因为它们现在用于将来保存。


13
2017-09-20 10:22





还要考虑版本控制存储库是一种参考,例如数据库是参考。
而这个词 承诺 来自 数据管理,使一组暂时的变化永久化。
(注意,对git来说很有意义,你可以在其中添加对索引的暂定更改 git add,然后在回购中记录它们 git commit

这些版本控制系统的上下文中的提交是指 将源代码的最新更改提交到存储库,并将这些更改作为存储库的主要修订的一部分。
  因此,当其他用户做一个 UPDATE 或者a checkout 从存储库中,他们将收到最新提交的版本,除非他们指定他们希望在存储库中检索以前版本的源代码。


5
2017-09-20 10:36





盲目地从我的macs lex中复制过,不能充分解释它吗?

commit |kəˈmɪt|
verb ( commits, committing, committed ) [ with obj. ]
1 ...
3 (commit something to) transfer something to (a state or place where it can be kept or preserved): he composed a letter but didn't commit it to paper | she committed each tiny feature to memory.
• consign (someone) officially to prison, especially on remand: he was committed to prison for contempt of court.
• send (a person or case) for trial in a higher court: the magistrate decided to commit him for trial .
• send (someone) to be confined in a psychiatric hospital.
• refer (a parliamentary or legislative bill) to a committee.

1
2017-09-20 12:21





它主要用于区分集中式VCS(如Subversion)与分布式VCS之间的差异。集中式系统使用“签出”和“签入”术语。这些术语有助于表明存在一些控制这些操作的中央集线器或代理。它具有可以打开然后关闭的“保险箱”的内涵。当文件中涉及锁定时尤其如此,Subversion / TFS等也是如此。

DVCS更喜欢更多不可知的术语,如“提交”和“更新”,因为它举例说明这些操作中没有中央代理。

“检入”某些东西也会让人感到困惑,但仍需要将其“推”到远程服务器上。 “签入”特别是在VCS中,它具有端到端流程的内涵。在DVCS中当然不会是这样。

您可以在DVCS中创建一个名为“check in”的命令别名,该别名执行提交然后执行推送。例如。


-4
2017-09-20 15:36



这完全是假的。 CVS和Subversion这两个最受欢迎的集中式系统几乎都使用术语“提交”。 - user4815162342
Subversion仅保留提交,因为它是直接CVS替换。 TFS称其为入住和结账。我不明白这是多么“完全错误”。这个问题需要一个答案来解释各种术语之间的微妙差异(就英语而言),这个答案提供了这个答案。 - nbevans
仅颠覆 保留 承诺  - 这正是我的观点,“提交”一词实际上是由集中式VCS使用了几十年。您的回答声称DVCS引入了“提交”一词,以区分旧的“登记入住”,但情况并非如此。 - user4815162342
我在哪里声称DVCS“引入”了术语提交?! - nbevans
你的前两句话暗示声称相当强烈。你说术语提交是“[用于]主要用于区分集中式VCS(如Subversion与分布式VCS)之间的差异”。事实并非如此,因为术语“提交”在分散系统存在之前已经确定使用,并且仍然在集中式系统中使用,具有与以往相同的含义。 - user4815162342