进来一段时间一直在忙碌,很少回头总结学过,用过的知识,由于缺少总结导致下次在遇到的时候总是记忆很模糊,有种似曾相识但却无能为力的感觉。特在此加以总结形成博客.很多原理性东西还不是很懂,
以后有时间慢慢研究来。
创建git 仓库:
mkdir code;
cd code;
git init 初始化一个新的空仓库
然后我把整个Android 的工程源码都拷贝到这个code目录下面啦。
git add -A
git config --global user.name "micheal"
git config --global user.email "michealchen@***"
git commit -m "init the code"
到这里我认为已经把git的服务器代码仓库建立好了、
当我使用git clone micheal@192.168.1.X:/home/micheal/code/.git的时候下载完整个代码。
在我编译的过程中,发现居然编译无法通过
对比发现在Android的源码\external里面的部分文件没有被添加到仓库,导致丢失了很多文件,始终不能编译通过。
后面咨询了一下以前公司的同事大牛。源码是自己创建的仓库的步骤和方法有问题,特此把大牛的方法总结如下(感谢龙哥的指点!):
服务器端(ip:192.168.1.206):
mkdir code;
cd code;
mkdir mtk8312.git;
cd mtk8312.git;
git init --bare;
cd ..
chmod -R 777 mtk8312.git;
至此服务器的仓库已经初始化完毕了。
客户端(ip:192.168.1.222):
cd Android //进入到Android 源码的根目录下面
git init-db //这句话不太明白什么意思,先记录下来,有时间在回来研究
git add -f * //-f 是force的缩写
git commit -m "init the code";
git remote add master micheal@192.168.1.206:/home/micheal/code/ mtk8312.git
git push master --all
到现在为止就等于把服务器的代码仓库的初始代码提交上来了
然后其他的服务器就可以使用clone 的命令取掉服务器上的代码了。
git clone micheal@192.168.1.206:/home/micheal/code/mtk8312.git
同事反馈会报如下错误
解决方法:
sudo chown -R git:git webSer.git 如果不管用使用下面的命令
发现.git/object/没有group写权限导致;执行 $ sudo chmod g+w -Rmtk8312.git/object 后OK