独立开发者使用GIT

24

除了工作之外,我在个人项目中使用SVN来保持私密性。 我将其用于在笔记本电脑和桌面计算机之间同步源代码,进行离线备份以及常规的SCM带来的优势。 目前流行的源代码控制系统是GIT,我必须承认,我正在考虑转移到它。 但考虑到我使用它的方式以及我已经使用分支,GIT真正带来了什么优势呢?

7个回答

20
  • Git比Subversion更快
  • 您可以将所有历史记录存储在笔记本电脑上
  • 您可以在不必担心服务器上线/可访问等情况的情况下,在多台机器之间同步
  • git stash非常适合存放未完成的更改
  • 只需进入目录并使用git init即可创建新存储库,无需进行任何服务器设置或管理
  • GitHub是托管Git存储库的很好的地方
  • 为什么Git优于X

2
在Linux上比Subversion更快。在Windows上......呃 - Joshua Partogi
4
我的经验是,即使在Windows上,Git的大多数操作速度也比Subversion更快(特别是因为许多Subversion操作需要与服务器通信,而它们在Git中只需在本地工作)。但是,是的,在Windows上,性能优势不是很明显。 - Brian Campbell
2
@jpartogi 在我的经验中,Git在Windows上比SVN快得多。 - Johnno Nolan
2
通过存储一半完成的更改,我指的是你正在处理某些东西,它甚至还没有准备好编译,而且你不想费心写提交消息,你只想要一个干净的工作副本,这样你就可以处理其他事情并回来继续工作。git stash将保存您的工作副本并将其重置为干净状态;然后,您可以进行其他补丁,提交它,并执行git stash pop以获取您的未完成更改。分支通常用于较长期的更改,并且通常尝试具有至少编译和通过单元测试的完整提交。 - Brian Campbell
1
现在有TortoiseGit和Git Extensions,两者都提供了类似TortoiseSVN的外壳集成。当然,我是Mac和Linux用户,所以当我需要在Windows上工作时,第一件事就是安装Cygwin、Emacs和其他一些东西,让它感觉像家一样,我对命令行非常满意。 - Brian Campbell
显示剩余4条评论

3

我在 bitbucket 上创建了一个账户来管理我的个人项目,原因有两个:

  1. 在工作中,我使用集中式的源代码控制系统。我想学习分布式版本控制系统。Mercurial 在 Windows 环境下表现更好,目前我很喜欢它。
  2. 我希望将我的源代码备份到离线位置。

3

分支。

创建分支似乎要容易得多。您可以在同一个目录中工作,然后使用一个简单的命令在分支之间切换。因此,您不需要为每个分支单独创建目录,而且比我使用过的任何其他版本控制系统都要快得多。


诺兰先生,任何人都会认为在NxtGenUG宣传这个。 - user1333

2
对我来说,使用Git与github.com相结合非常有用——它使我不必担心设置和管理实际的存储库系统,因此我可以集中精力学习如何使用主要命令本身:)。
我没有使用过其他任何SCM平台,所以我的观点可能有些基础,但是它足够令人愉快-考虑到我在Windows上,也很好知道有msysgit这样的良好支持。
我想每个人都不同,但对于像我这样的初学者来说,这是一个非常温和的SCM入门。

1

我最近也做了你正在考虑的相同转换。我认为,由于更好的分支处理、索引和离线工作的可能性带来的工作流改进,这是值得的。但这并不是一个无痛的变化,很多概念在一开始会让人感到困惑。

有一些关于SVN和git主要区别的文章可能对你有用。这篇是一个(有偏见的)概述。


0

分布式源代码控制允许本地提交,而且您可以在离线状态下执行这些操作。

虽然Linus's talk关于Git的演讲非常有趣且充满真理,但并不是所有内容都适用于小团队或单人团队。

您可以使用git-svn将Git作为前端与本地提交结合使用,以连接到SVN存储库。如果您不喜欢这些工具,使用现有的SVN存储库可以提供撤销计划。

当然还有其他一些分布式源代码控制系统可用。


我确实看了Linus的演讲,但并没有真正激发我的灵感。GIT到SVN桥接的好主意给了一个回退条款。 - user1333

0
我大约十年前(可能更久)采用了使用源代码控制技术(首先是CVS,然后是SVN)来同步和备份我的环境。它基本上起作用了,但我觉得有点笨重,没有做到我想要的彻底工作,让一些系统变得有点陈旧,并且避免设置这些系统以便与此方案一起使用。
大约一年前,我儿子说服我尝试使用git。现在,我所有的系统都同步并备份到我们家庭git repo hub中,提供我需要的个人隐私(ssh访问)。
我发现git使用模型非常容易使用,现在我有一个每天的仪式,从我最近使用的机器推送更改,并将它们拉到我下一个使用的机器上(通常涉及五台左右的计算机)。那些在我之前回答的人已经很好地解决了git的技术优势。我的证言是git相对于svn的易用性优势,根据我现在已经使用了大约九个月的情况。
话虽如此,早期使用git可能会感到有些不适,因为它是非常不同的模型,需要一些时间来适应。但是,在SO、出版的书籍(我推荐O'Reilly的书)和丰富的网络资源之间,学习git现在比以往任何时候都更容易。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接