工作中一直使用svn仓库管理,最近了解了下Git管理方式,此文章做以记录。欢迎指出错误和不足。
此一系列文章使用终端方式进行仓库管理,图形化管理推荐使用sourceTree。
Pro Git 网页版 : https://git-scm.com/book/zh/v2
叶大简书 > http://www.jianshu.com/p/87e34894a9f9?utm_campaign=maleskine&utm_content=note&utm_medium=writer_share&utm_source=weibo
1.安装
mac下Git有多中安装方式,这里采用终端的方式,便于使用各种命令;图形化方式的也比较方便,但是图形化的部分命令无法使用。
下载地址: http://git-scm.com/download/mac
2.配置
当安装完 Git 应该做的第一件事就是设置你的用户名称与邮件地址。 这样做很重要,因为每一个 Git 的提交都会使用这些信息,并且它会写入到你的每一次提交中,不可更改:
$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com
再次强调,如果使用了 --global 选项,那么该命令只需要运行一次,因为之后无论你在该系统上做任何事情, Git 都会使用那些信息。 当你想针对特定项目使用不同的用户名称与邮件地址时,可以在那个项目目录下运行没有 --global 选项的命令来配置。
3.获取 Git 仓库
有两种取得 Git 项目仓库的方法。 第一种是在现有项目或目录下导入所有文件到 Git 中; 第二种是从一个服务器克隆一个现有的 Git 仓库
(1)初始化仓库:
在现有目录下使用一下命令
$ git init
该命令将创建一个名为 .git的子目录,这个子目录含有你初始化的 Git 仓库中所有的必须文件,这些文件是 Git 仓库的骨干。 但是,在这个时候,我们仅仅是做了一个初始化的操作,你的项目里的文件还没有被跟踪。
如果你是在一个已经存在文件的文件夹(而不是空文件夹)中初始化 Git 仓库来进行版本控制的话,你应该开始跟踪这些文件并提交。 你可通过 git add命令来实现对指定文件的跟踪,然后执行 git commit提交:
$ git add *.c
$ git add LICENSE
$ git commit -m 'initial project version
现在,我们已经得到了一个实际维护(或者说是跟踪)着若干个文件的 Git 仓库
(2)克隆现有的仓库
远程克隆文件,svn等部分其他管理工具为checkout,git为clone操作。
克隆仓库的命令格式是 git clone [url] 。 比如,要克隆 Git 的可链接库 libgit2,可以用下面的命令:
$ git clone https://github.com/libgit2/libgit2
如果你想在克隆远程仓库的时候,自定义本地仓库的名字,你可以使用如下命令:
$ git clone https://github.com/libgit2/libgit2 mylibgit
Git 支持多种数据传输协议。 上面的例子使用的是 https:// 协议,不过你也可以使用 git:// 协议或者使用 SSH 传输协议,比如 user@server:path/to/repo.git。
tips:参考叶大的文章使用 user@server:path/to/repo.git这种格式clone时一直提示:
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
希望小伙伴给出方法。
届时已将仓库数据clone一份到本地。
后续补充。