GIT 实验
服务器环境:linux + git + gitolite(gitolite是什么,说白了就是安装后建了一个仓库,管理员用户可以通过修改并上传配置文件实现GIT仓库及其权限的管理。提醒:别用那个gitosis,虽然网上到处是它的文章,但实际了它已经好几年没更新了)
@@@本地配置
#修改 ~/.ssh/config host aliyun user git hostname yourgitserver.com identityfile ~/.ssh/mypubkey #确认服务器上的管理员key 与本地一致,如出现密码输入提示,则是因为ssh key 验证失败。
以下命令必要条件:环境配置完毕并可通过更新gitolite-admin仓库自动创建新仓库及用户,GITOLITE的安装配置自行GOOGLE
1、创建新仓库:MTGSTORE-SRC 名为 MTG
2、客户端克隆该项目:命名为 mtgstore
1 git clone aliyun:MTGSTORE mtgstore
1)创建文件test并提交到远程
1 git branch //查看当前分支 2 touch test 3 git add test //添加操作 4 git commit -am "create file test" //提交 5 git status //查看动作 6 git push origin master //提交到服务器 7 *初次提交时要指定分支
2)查看
1 git status 2 git ls-tree HEAD //查看暂存区 3 git remote -v //查看远程
3)新建仓库mtgv2
1 git remote add mtgv2 aliyun:MTGSTORE 2 git remote -v 3 git remote show mtgv2 4 git remote rm mtgv2 //删除仓库
3、创建一个名为PPZ的新分支,并创建提交一个README文件到仓库
1 git branch //查看本地分支 2 git branch -r //查看远程分支 3 git branch ppz 4 git checkout ppz 5 touch README 6 git add README 7 git commit -am "add README to ppz branch" 8 git push origin ppz:ppz
4、创建新项目并获取分支ppz
1)克隆项目并获取分支
1 git clone aliyun:MTGSTORE ppz 2 git branch -r 3 git checkout -t origin/ppz //-t:获取后切换到ppz分支
2)独立克隆分支
1 git clone aliyun:MTGSTORE mtgppz -b ppz 这样就是某个分支
3)比较分支
1 git diff origin/master master // origin/master 是remote repo branch ,master为local branch
5、删除分支
1 git branch -d ppz 2 git branch -D ppz //强制删除,无论如何不要这个分支了
6、命令太长,使用别名
1 git config --global alias.m 'commit -m' 2 git m "test redefined"