Git仓库应用
来源:互联网 发布:ubuntu启动程序命令 编辑:程序博客网 时间:2024/06/05 17:05
初始化仓库
我们可以通过两种方式来获取Git仓库
- 将项目所需的所有文件导入所有文件 Git 中
- 从一个服务器克隆一个现有的 Git 仓库。
1. 在现有目录中初始化仓库
如果你打算使用 Git 来对现有的项目进行管理,你只需要进入该项目目录并输入:
$ git init
这将会在当前目录下创建一个 .git 目录,此目录含有初始化的 Git 仓库中所有的必须文件。注意:此目录为隐藏的,就如同 .svn 目录一样,我们需要通过显示隐藏文件来看到它。如果我们需要指定在哪个目录初始化,可以通过如下命令:
$ git init test/$ ls -al test/total 4drwxr-xr-x 1 y 197121 0 1月 21 12:45 ./drwxr-xr-x 1 y 197121 0 1月 21 12:45 ../drwxr-xr-x 1 y 197121 0 1月 21 12:45 .git/
可见,我们在当前目录下的子目录test下创建了Git仓库,那么我们可以在当前目录向仓库中添加文件么?
$ git add 1.txtfatal: Not a git repository (or any of the parent directories): .git
所以,git仓库管理的文件需要与仓库在同级目录下,或者在此目录的子目录下才能起作用。
2. 克隆仓库
在逛github的时候,遇到好的项目想下载要怎么办?和 svn 一样,我们也可以克隆远程仓库中的文件。
git clone [url]
如果需要同上面一样,克隆到指定目录可以使用
git clone [url] [directory]
和 SVN 不同的是,现在使用的命令是 clone 而不是 checkout 。因为 Git 克隆的是该 Git 仓库的几乎所有数据,而不是仅仅复制你工作所需要文件。 当执行 git clone 命令的时候,默认配置下远程 Git 仓库中的每一个文件的每一个版本都将被拉取下来。
一般我们从GitHub克隆的项目,我们是通过https的方式,我们也可以通过SSH来配置和提交我们的项目,对于在自己的计算机上操作时,推荐使用此方法,比较便捷。可以通过下面文章来配置:
GitHub的SSH提交配置
远程仓库操作
1. 查看远程仓库
查看配置的远程仓库服务器,可通过 git remote
命令。 这将会列出你指定的每一个远程服务器的简写,如果要显示对应的URL,则可以加上 -v:
$ git remoteorigin$ git remote -vorigin git@github.com:oDevilo/Git-Study.git (fetch)origin git@github.com:oDevilo/Git-Study.git (push)
如果你使用 clone 命令克隆了一个仓库,命令会自动将其添加为远程仓库并默认以 “origin” 为简写。
想要查看某一个远程仓库的更多信息,可以使用 git remote show [remote-name]
命令:
$ git remote show mayun* remote mayun Fetch URL: https://git.oschina.net/oDevilo/Git-Study.git Push URL: https://git.oschina.net/oDevilo/Git-Study.git HEAD branch: master Remote branches: dev tracked master tracked refs/remotes/mayun/test stale (use 'git remote prune' to remove) tast new (next fetch will store in remotes/mayun) Local refs configured for 'git push': dev pushes to dev (up to date) master pushes to master (up to date)
它会列出远程仓库的 URL 与跟踪分支的信息。 它告诉你正处于 master 分支,并且远程分支有4个,其中 dev 和 master 和 test 是已经在本地的,test虽在本地但是远程仓库中已经被删除, tast 则是远程仓库有本地还未创建,将在下次fetch的时候会被抓取。
2. 添加远程仓库
在实际开发过程中,我们的项目可能会在多个git服务器上,不同服务器可能维护不同版本。这个时候,我们可能就要为项目添加新的远程仓库。可以通过命令git remote add <shortname> <url>
并在此查看远程仓库信息:
$ git remote add mayun https://git.oschina.net/oDevilo/Git-Study.git$ git remote -vmayun https://git.oschina.net/oDevilo/Git-Study.git (fetch)mayun https://git.oschina.net/oDevilo/Git-Study.git (push)origin git@github.com:oDevilo/Git-Study.git (fetch)origin git@github.com:oDevilo/Git-Study.git (push)
如果远程仓库不止一个,那么看到的会使如上情况,第一列相当于仓库对应的别名,比如你想向其中一个仓库提交数据,可以直接通过别名而不是URL:
$ git push mayun master (向仓库mayun的master分支提交)
3. 抓取和推送
可以通过下面方法抓取数据:
$ git fetch [remote-name]
此命令会访问远程仓库,从中拉取所有你还没有的数据。 执行完成后,你将会拥有那个远程仓库中所有分支的引用,可以随时合并或查看。
注意:
- git fetch origin 会抓取克隆(或上一次抓取)后新推送的所有工作
- 其将数据拉取到你的本地仓库 - 它并不会自动合并或修改你当前的工作
$ git pull mayun相当于$ git fetch mayun$ git merge mayun/master
如果要将本地数据推送到远程仓库可以使用git push [remote-name] [branch-name]
:
$ git push mayun dev
4. 重命名与移除
用git remote rename [old] [new]
重命名远程仓库:
$ git remote rename origin github$ git remotegithubmayun
通过git remote rm [name]
来移除远程仓库:
$ git remote rm mayun$ git remotegithub
- Git仓库应用
- git 应用 远程仓库分歧
- git 仓库
- Git 仓库
- Git 仓库
- 【Git】Git创建仓库
- Git 远程仓库 git remote
- Git 基础 - 获取 Git 仓库
- 备份git代码仓库
- git 简单创建仓库
- git--远程仓库
- git 空仓库
- git远程仓库
- git 创建远程仓库
- GIT远端仓库备份
- 合并两个git仓库
- git仓库搬家
- git 更改远程仓库
- 【C#基础】从堆栈看类型
- 2016年Java面试复习点
- 利用阿里巴巴的矢量图片库工具网站制作自己的图标字体
- Nginx源码阅读(ngx_list_t)
- CoordinatorLayout 协调者布局的简单使用1
- Git仓库应用
- 数据挖掘整理(一)
- 分块查找算法 (php)
- RxJava学习经验谈——map与flatmap
- 【mysql】如何搭建集群主从复制
- 13 共享内存3
- Java:日期时间字符串和毫秒相互转换
- Nginx源码阅读(ngx_array_t)
- [Boolan] C++第二周(创建一个带指针成员变量的类)[注意事项]