远程仓库 GitHub

远程仓库

 

这里介绍的远程仓库指的是 GitHub, 在这个网站,所有非私有的的代码,都可以被其他人查看,所以,一些机密或者重要的文件千万不要上传到这里面,如果需要可以购买付费版本或自己公司搭建埃及的远程仓库

 

添加远程仓库

登陆GitHub,然后,在右上角找到“Create a new repo”按钮,创建一个新的仓库, 创建成功后得到一个空的仓库,下面会给出命令,将我们本地的 git 仓库与他相关联,根据提示便可以完成。

把本地库的内容推送到远程

创建远程仓库
写readme
git add .
git commit ...

git push origin master     // origin 是别名

可以在  .git/config  配置文件中修改

 

把远程仓库内容克隆到本地

远程库已经准备好了,下一步是用命令 git clone 克隆一个本地库

git clone https://github.com/WuPeiqi/s5day83.git

  

协同开发

  通常用到的分支

    master : 存放稳定的

    review :  个人代码在这里合并,合并成功后(清除冲突后),放入 dev

    dev :  开发版本的代码

 

当你从远程仓库克隆时,实际上Git自动把本地的master分支和远程的master分支对应起来了,并且,远程仓库的默认名称是origin

要查看远程库的信息,用git remote

$ git remote
origin

或者,用git remote -v显示更详细的信息:

$ git remote -v
origin  git@github.com:michaelliao/learngit.git (fetch)
origin  git@github.com:michaelliao/learngit.git (push)

  

上面显示了可以抓取和推送的origin的地址。如果没有推送权限,就看不到push的地址。

推送分支

推送分支,就是把该分支上的所有本地提交推送到远程库。推送时,要指定本地分支,这样,Git就会把该分支推送到远程库对应的远程分支上

$ git push origin master

如果要推送其他分支,比如dev,就改成:

$ git push origin dev

  

Fork

主要是用来修改别人程序的 bug, 但由于没有权限,所以只能复制一份到自己的仓库中,修改后发送给对方,等待对方采纳或忽略。。。

你可以访问它的项目主页,点“Fork”就在自己的账号下克隆了一个bootstrap仓库,然后,从自己的账号下clone: 

git clone git@github.com:michaelliao/bootstrap.git

  注:一定要从自己的账号下clone仓库

 

如果你修改成功后,推送到自己的仓库。

如果你希望bootstrap的官方库能接受你的修改,你就可以在GitHub上发起一个pull request。当然,对方是否接受你的pull request就不一定了。

 

让 Git 输入框有颜色

$ git config --global color.ui true

  

忽略特殊文件

在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件。

https://github.com/github/gitignore 这个网络中有许多写好的配置,我们可以用来参考下

 

忽略文件的原则是:

  1. 忽略操作系统自动生成的文件,比如缩略图等;
  2. 忽略编译生成的中间文件、可执行文件等,也就是如果一个文件是通过另一个文件自动生成的,那自动生成的文件就没必要放进版本库,比如Java编译产生的.class文件;
  3. 忽略你自己的带有敏感信息的配置文件,比如存放口令的配置文件。

举个例子:

# Windows:
Thumbs.db
ehthumbs.db
Desktop.ini

# Python:
*.py[cod]
*.so
*.egg
*.egg-info
dist
build

# My configurations:
db.ini
deploy_key_rsa

  

下面是一些规则说明

a.*    // a开头的所有后缀名
test/[abc].py  // test目录下的 a.py 或 b.py 或 c.py
[abc]       // a 或 b 或 c
test/*   // test下的所有文件
!test/a.py   // 非 test下的a.py 文件
.idea/*    // .idea文件夹下的所有文件
*.pyc      // 所有.pyc 文件
*.excel        // 所有 .excel 文件

  

 

posted on 2017-09-20 09:49  何必从头  阅读(292)  评论(0编辑  收藏  举报

导航