打标签 ‘ git ’
【TIP】在我们的《Windows 下 Git 配置与使用指南》 中,有介绍大家使用 $ git go 命令。其实,这并非 Git 的原生命令,它是我们自定义的一个 alias(别名),由 $git add、$git commit、$git push 和 $git pull 四个命令组合而成。待熟悉之后,你可以直接使用这些原生命令,或者自定义更适合自己的 alias。 add 添加新文件到 Git 代码仓库的索引中 $ git add filename mv 移动或重命名文件 $ git mv old-filename new-filename rm 从工作目录和 Git 代码索引中删除文件 $ git rm filename status 查看目前工作目录的代码状态,自上次提交以来的添加、修改和删除等 $ git status diff 查看自上次提交以来,本地代码改动的具体情况 $ git diff commit 提交修改的代码(只是提交到本地的代码库,不会推送到服务器) $ git commit -am '修改说明' 如果觉得刚提交的“修改说明”写得不够好,可输入以下命令调整 $ git commit --amend push 将自上次 push 以来的,本地历次 commit,推送到服务器 结合我们的实际,应该这样写: $ git push origin master:your-id 其中,master [ 阅读全文]
一、安装 默认安装:msysGit 二、配置 1、C:\Program Files\Git\etc\gitconfig 添加: 【注意!】请将第二行最后的 “your-id” 修改成你在服务器上的实际 id,默认是姓名拼音。 [alias] go = "! bash -c \"git pull && git add .; if [ \\\"$*\\\" == \\\"\\\" ]; then git commit -a; else git commit -am \\\"$*\\\"; fi; git push origin master:your-id;\"" [core] autocrlf = false [gui] encoding = utf-8 [i18n] [ 阅读全文]
在 Windows 下用 NetBeans 做 PHP 开发,首先想到的是 NetBeans 的插件:NBGit。 评价:能用;若需没有的功能,可以自定义菜单调用自定义 bat 脚本;开发不活跃,使用没有信心。 第二个则是:TortoiseGit,SVN 小乌龟的 Git 版本。 评价:该有的功能基本都有了,还是不错的。 另外,TortoiseGit 只是 GUI 工具,使用它需要先安装 msysGit,这是正宗的 Git 之 Windows 版本。msysGit 有个简单的 GUI 工具,及简单的 Explorer 集成;但它自带的 Bash 非常好用,深得 Linux 的真传。 选择:msysGit。 理由: NBGit 不用说,功能都不完善,还需要自己定制 bat 脚本(若此,则它同样要依赖 msysGit);开发不活跃,很可能 NetBeans 下个版本更新就不能用了;况且,我们还有别的项目,不使用 NetBeans。 TortoiseGit 从功能上说是完善的,但它只是功能的堆砌而已,使用时完全体会不到 GUI 带来的便利。相反,它让人感觉很繁琐,一个劲地点鼠标,点来点去全是跟菜单打交道,远离了 Git 命令、远离了 Git 输出提示、远离了真相。 msysGit 的 Bash 非常好用;加上 Git 强大的 alias 功能,我们完全可以自定义一个 $ git go,使得 [ 阅读全文]
注: Git 的强大、灵活、好用,毋庸置疑。 但也正是 Git 的灵活性,在公司推行时,如何执行统一的流程成为一个问题。我想了不少时间才制订出一个办法。 目的是规范、统一。还有就是,Windows 下的同事,特别是不熟悉命令行的同事,怎样才能使他们好理解,并且觉得简单(之前大家觉得概念太多,难以理解;步骤多,记不住,不小心就搞错,冲突频发)。 说到 Windows,Git 在 Windows 下不如 Linux 下好使,这也是一个需要考虑的问题。 同样是在公司 Wiki 上写的,再次拿到 Blog 来凑数呵呵~。 版本控制 —————— 简单地说,就是将在本地开发的代码,定时推送到服务器。每一次修改,记录下它的作者、时间及修改说明等。 相对的,我们也可以从服务器下拉其他人推送的代码,并了解它的作者、时间、修改说明及其具体的修改内容。 这样,版本控制给团队协作开发提供了极大的方便。即使是一个人开发,因为它记录下了我们整个的开发历史,也是极有帮助和价值的。 比如,如果某次修改甚至整个系统出现问题,它也能帮助找回我们珍贵的代码。 分布式版本控制 ——————————– 更进一步,分布式版本控制工具使得我们在本机上即拥有完整的功能,不依赖于服务器,使用更为方便。它们往往也提供其它更好用或更强大的功能,比如灵活的分支管理。 Git ——– Git 是 Linux 之父 Linus Trovalds,为管理 Linux 内核代码而建立的,被认为是分布式版本控制工具中的顶级水准。智能、友好、强健、高效。 Git 工作流程 —————————- 1、使用中央服务器辅助协作; 2、每人在服务器拥有一个以自己 id 为名称的分支; 3、各人只许推送更新到自己的分支,不允许推送到别人的分支或者 master; 4、master 由专人管理,在合适时 merge 其它分支(开发初期每日自动 merge 各人分支,生产化后则由人工 merge 经过 review 的分支); 5、代码修改 merge 到 master 后,将同步到所有终端。 【TIP】:熟悉之后,你可以创建类似 myId_branchName 的其它分支。 【TIP】:以上只是概念介绍,至于具体的操作,请参考:《Windows 下 Git 配置与使用指南》、 《Git 进阶功能》。 [ 阅读全文]
Update: 已可直接从库里安装了~。 # apt-get install redmine redmine-mysql libapache2-mod-passenger _________________________________________________________________________ 按:这是在公司 WIKI 上写的文章,难得这么认真,拿出来分享一下 :)。对比过十多个项目管理系统,然后在比较好的 Redmine, Trac, Mantis 三个当中选择了 Redmine。文中以 Debian Squeeze 为例,但其它 GNU/Linux 特别是 Debian Lenny / Sid、Ubuntu 应该基本一致。 _________________________________________________________________________ 一、废话 Debian 的库里有最新的 redmine 发布版(0.9.3),一个命令就可以搞定: #apt-get install redmine However……,安装后运行会出现 http 500 service unavailable 等问题。因为 Debian 只有 2.2.3 的 rails,而 redmine 0.9.3 要求 rails 的版本为 2.3.5。 我第一个想法是,既然库里有 redmine,就不折腾了,删掉 rails,再手工装一个新版本。可是 redmine 是依赖于 rails 的,要删得一起删。然后我就想,好,保留它,再装一个新版本覆盖之!就是这个想法……,最后遇到了很多问题,又因为对 ror [ 阅读全文]