又开始胡折腾了, 哈哈, 今天折腾的是服务器建立GIT仓库. 嗯, 是纯仓库.
1. 保证所有操作均在root帐号下, 因为建立的将是server side的GIT仓库
2. 首先建立一个git的帐号, useradd -m git
3. 建立一个目录, 比如/var/git/test, 然后进入目录, 运行git init建立一个仓库
4. 退出该目录, 执行git clone –bare test test.git建立一个纯仓库目录
5. 使用chown -R git:git test.git将操作权限给git. 同时, 可以删除原来的test目录了
6. 给git用户设置密码, 然后su到git上, 建立.ssh/authorized_keys文件, 并将自己主机上的.ssh/id_rsa.pub文件中的内容贴出去, 这样, 就可以直接使用ssh收发git, 而不用输入密码了
7. 回到本机, 假设刚才服务器的地址是example.com, 使用git clone git@example.com:/var/git/test.git来检出仓库, 同时, 你也有了对仓库的读写操作.
每次都直接对master分支操作并提交, 显然不是一个好的方案. 有人对git的使用提出了一个很好的模型, 地址是:
http://nvie.com/posts/a-successful-git-branching-model/
这个模型有一些复杂, 我做了 一些简化:
1. 首先假设该项目有2人参与, 并有一个纯GIT仓库
2. 保证GIT仓库里有2个分支, master和dev
3. master分支保存的, 必须是可以直接当作版本发布的东西, 比如0.3beta, 0.5alpha
4. dev分支保存的, 必须是可以运行的, 无错误的版本, 以一个功能点为单位提交的版本
5. 每个开发者需要在本地建立自己的分支来开发, 且提交 以小功能点为单位, 比如, 完整了注册模块, 提交 一次, 完成了登录模块, 提交 一次. 功能开发完成后, merge进dev分支, 然后继续开发其它功能点.
6. 修改bug必须在bugfix分支上进行
7. 如果开发地点会变化, 可以考虑将部分本地分支放到远端, 单成员间注意分支名称不要相同
这么做的好处是, 需要版本发布的时候, 直接checkout master分支, 或者建立于master分支上的tag, 确保功能完备. dev分支永远是可以运行的, 这在web开发中很重要, 每次pull出来的, 都是正确的. 由于git运行本地提交, 所以开发者可以在本地做多次提交, 功能开发完成并测试通过后, 一次merge进dev, 而不需要多次与服务器同步. 修复bug的时候, 使用单独的分支, 既不影响开发, 又能快速相应bug, bug修改完成后, 直接删除该分支, 就算失败了, 也可以直接删掉分支,
而不影响其它代码.
分享到:
相关推荐
五、创建Git仓库 1. 登录到Gitblit管理界面,点击“Create”按钮新建仓库。 2. 输入仓库名、描述以及是否公开等信息。 3. 设置权限:为不同的用户或团队分配读写权限。 六、在客户端配置远程仓库 1. 在本地Git仓库...
个人总结搭建 Git 服务器仓库采用无密登录方式以及 TortoiseGit 的...本文档提供了搭建 Git 服务器仓库、创建 Git 用户、生成 SSH KEY、使用 TortoiseGit 等知识点,旨在帮助读者快速搭建 Git 服务器并进行无密登录。
搭建 GIT 服务器和客户端 在上述文件中,我们可以提取出以下知识点: ...我们需要安装 Git 软件,创建 Git 用户,配置 SSH 密钥,初始化 Git 仓库,配置 SSH,克隆服务器上的仓库,并确保服务器的安全性。
在项目根目录下,使用`git init`命令初始化Git仓库,然后通过`git remote add origin <你的仓库URL>`将远程仓库添加为origin。这里的URL通常为`http://yourserver:3000/你的用户名/仓库名.git`或`ssh://git@your...
2. **Git仓库与分支**:Git仓库用于存储版本化的文件和目录结构,而分支则是在仓库中用于隔离不同开发线程的一种机制。 3. **Gitolite简介**:Gitolite是一个轻量级的、易于配置的Git服务器管理系统,支持多用户、多...
#### 第三步: 创建Git仓库 在服务器上创建一个新的Git仓库,并将其所有者设置为之前创建的Git用户。 ```bash [root@localhost home]# mkdir -p data/git/gittest.git [root@localhost home]# git init --bare data/...
1. **仓库(Repository)**:存储项目所有版本信息的地方,每个Git仓库都有一个HEAD指针指向当前分支。 2. **工作目录(Working Directory)**:用户实际编辑代码的地方,包含了项目的原始文件和.git隐藏目录。 3. *...
2. **创建Git仓库:** - 创建Git仓库目录: ```bash [root@localhost home]# mkdir -p data/git/gittest.git ``` - 初始化空仓库: ```bash [root@localhost home]# git init --bare data/git/gittest.git ...
每个开发者的本地机器上都有一个完整的Git仓库,可以进行提交、分支、合并等操作,无需连接到远程服务器。这样提高了开发效率,同时也减少了对中央服务器的依赖。 3. **分支管理**:Git的分支操作非常轻量级,创建...
3. **创建Git仓库**: - 在服务器上选择一个合适的位置创建一个新的目录,例如:“C:\GitRepos\myproject.git”。然后,初始化这个目录为Git仓库: ``` cd C:\GitRepos git init --bare myproject.git ``` 4. ...
一键生成创建Git服务器带工作目录的仓库完整的脚本,非常实用!
它提供了一个基于Web的界面来管理Git仓库,并且无需复杂的配置过程就能快速搭建起一个功能完备的Git服务器。 #### 三、安装准备 在正式安装GitBlit之前,我们需要做一些准备工作,包括安装Java环境、更新JCE策略...
1. 取仓库代码:使用 git clone 命令从服务器上取仓库代码,例如 git clone git@10.113.30.60:/home/git/test.git。 2. 添加文件和推送至仓库:使用 git add 和 git commit 命令添加文件,然后使用 git push 命令推...
在服务器上创建Git仓库,并将需要版本控制的项目文件夹添加到仓库中。然后,使用Git命令行工具或客户端进行推送、拉取等操作。 10. **维护与更新** 定期检查Git和CopSSH的更新,保持软件安全性和稳定性,同时监控...
3. **创建Git仓库** 在你想存放代码的地方,创建一个新的目录,然后初始化为Git仓库: ``` mkdir 项目名 cd 项目名 git init ``` 4. **设置权限与SSH密钥** Git服务器通常使用SSH协议,因此需要生成SSH密钥...
2. 创建Git仓库目录并设置权限 3. 初始化裸仓库 4. 配置post-receive钩子 5. 设置SSH访问权限 通过以上步骤,你便成功在Linux系统上搭建了一个简单的Git服务器,可供团队成员进行代码版本控制。记得定期备份你的Git...
Gitblit则是一个轻量级、纯Java编写的Git服务器管理程序,它提供了简单的Web界面来管理和托管Git仓库。本教程将详细介绍如何在Windows Server 2008 R2操作系统上使用Gitblit搭建Git服务器。 首先,你需要准备以下两...
在远程端建立Git仓库是安装配置Git服务器的关键一步。在这个过程中,需要确保远程服务器已经设置了git用户,并切换到该用户下,然后创建仓库文件夹,并设置好仓库的相关配置。 通过这一系列的操作,可以在Linux系统...