这篇博客将介绍我在win7环境下搭建Gitblit的过程以及使用时遇到的问题
首先是下载windows版本的Gitblit,然后需要安装JAVA环境,配置好JAVA运行环境后,解压Gitblit压缩包,修改gitblit.propeties文件可以设置软件相关属性。运行gitblit.bat,至此软件就安装好了。
软件安装好后,迫不及待的测试了一番,于是新建了一个项目。
项目点进去是这样的
有3个链接,其实下面还盖着一排可以点的东西,但是都没搞清楚。但是,我知道Github上拿来clone项目的也是http协议。于是在本地clone了这个项目。
克隆之后,新建文件夹的目录结构就和远程仓库中保持一致了。这里Gitblit的东西就讲完了。
接下来讲讲git的东西。我们从init讲起。
git init指令,会在当前目录下创建.git目录,也就是将当前目录视作本地仓库,如果你想返回了,删掉.git即可。但是.git一般情况下是隐藏文件。同理,使用git clone 克隆下来的项目,也会带有一个.git文件夹。所以说,.git是git的核心。
git clone指令,当我们从web上拷贝一个地址时,其实这个地址代表了这个项目仓库的地址。一个仓库自然有很多分支,但是我们克隆下来的文件永远都是master分支中的文件。所以,最好保证master分支是可以运行的。那作为开发者,我们关心的其实是开发分支,此时我们就要用到git fetch。
接下来对指令进行整理。
git命令 | 参数 | 讲解 |
---|---|---|
git init | 无 | 初始化,建立本地仓库 |
git clone | 远程仓库地址 | 克隆远程仓库到本地 |
git add | 将工作区的修改提交到暂存区 | |
git commit | -m “comment” | 将暂存区的修改提交到本地仓库 |
git branch | branchname | 创建分支 |
git checkout | branchname | 切换到某分支 |
git checkout | -b branchname origin/remotes-branchname | 映射远程分支到本地分支 |
git checkout | -b branchname | 创建并切换到某分支 |
git checkout | –file filename | 撤销某文件在工作区的修改 |
git reset HEAD | filename | 撤销某文件在暂存区的修改 |
git status | 工作区和仓库进行对比,是否修改 | |
git diff | 工作区和仓库进行对比,具体到内容 | |
git log | 查看commit历史 | |
git reset | –hard HEAD^ | 回退到上一个版本 |
git reset | –head ID | 回退到某一个版本,git log中能看到版本ID |
git push origin | branchname | 提交到远程仓库 |
git fetch | 获取最新版本 | |
git pull | 从远程获取最新版本并merge到本地 | |
git merge | branchname | 合并分支到当前分支 |
暂时就写这么多,大家多多指教。