bitbucket是一个非常不错的开源、免费而且能够托管私人代码的网站。相比之下,gitbub只能是开源代码托管。
安装Git, 跳过(可以使用port或yum进行安装)
安装完后,
在bitbucket上申请一个免费的个人代码托管,这个还可以加入5-8个朋友来组成一个团队,如果更多人则需要建立Team来管理。
Git的使用非常简单
简单的例子:
cd ~
mkdir gitrepos
cd gitrepos/
git clone https://youname@bitbucket.org/yourname/myrepo.git
vim README
git add README
git commit -m "adding repo instructions"
git push -u origin master
// 上面的就不做解释了,下面说一下常用的Scenario
1. 修改代码
先git pull, 保证当前代码为最新
然后进行修改,修改完后,在xcode中右键该文件,选择soucre -> commit selected files. 提交到本地仓库。这里可以完成多个文件的修改和多次本地仓库的提交。
最后,输入git push 进行上传, 即完成。
2. 添加新文件
同样,先git pull, 保证本地代码为最新
添加文件,通常添加完文件后, XCode的项目工程都会需要改变,然后和上面一样,右键修改了的文件,选择source->commit selected files提交到本地仓库。
如果添加的文件不是在XCode之中的代码文件,如需要在外面添另一个“大家好.docx”文件,则用命令git add 大家好.docx, 并输入git commit -m "这是注释内容",可以使用中文
最后,输入git push推上去。
3. 修改非代码文件,如需要修改一个“大家好.docx”文件
在本地修改完这个word文件后,输入git commit -m "这是第一次修改" 大家好.docx
然后输入git push 即可完成修改
4. 如果要在项目中添加一个空文件夹,操作如下:先在物理位置建立一个文件夹,然后在XCode中导入这个文件夹,然后执行git status, 会发现git什么都没有检测到,这可能是git的一个小bug, git检测不了空文件夹,于是我们在这个文件夹中添加一个其它什么文件的,然后再执行git status , git就会显示有文件没有被 track到,于是git add folder1/folder2 , 最后再输入git commit -m "注释", 执行完后,git就提示,添加了一个其它什么文件, 最后git push, 然后就到服务器上了
5. 如果在项目中有些文件或者文件夹不需要上传到服务器上, 不想与其它人分享, 则可以在git下的一个隐藏文件中进行编辑,以指定哪些文件不需要包含在git中进行管理,操作方法是, 通过terminal console, 输入vim .gitignore(前提是进入到当前文件夹,由于git把所有记录都放在顶级目录下,所以先需要cd到顶级目录下。), 然后进行编辑,可以是相对的目录位置,如MagazineUniteOldQikan/MagazinePro/201203 字样。 然后保存, 当再次执行git status时,会发现当前目录指定的这个201203文件夹并未被git所统计进来。
但有次出出了一点错,就是在这个.gitignore文件中,第一行,我加入了一个空行, 结果, 这个文件似乎就失效 了。删除后还是不行, 后来就执行了git reset HEAD^, 然后就正常了。原因未知, 也许是这个文件不能空行。
6. 记录一个遇到的问题, 在执行git pull时, 显示ssh:connect to host 121.199.240.201 port 22: Connection refused, fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository existed. 当然我们发现这个服务器是正常的, 于是想到可能是公司这个端口被禁了, 问了一下IT, 果然如此。
7. 有时某个文件想进行重置,可以执行git reset HEAD 文件名, 然后再执行git checkout 文件名, 即可。这通常是用在xcode的项目文件出现冲突时