转自http://www.cnblogs.com/fnng/archive/2012/01/07/2315685.html

怕找不到~

本文在我之前的那篇《git/github学习笔记》的基础上,属于那个的升级加强版,欢迎对照阅读:http://www.cnblogs.com/fnng/archive/2011/08/25/2153807.html

如果本文有不太明白的地方请参考上面的文章。

Github: git项目托管网站,请先免费申请一个github帐号:www.github.com

Git:分布式版本控制工具,http://d.download.csdn.net/down/3169511/z_y_liu89

Github的申请与git的安装我这里就不说了。这个不难。

----//git/github环境配置

一 .  github上创建立一个项目

用户登录后系统,在github首页,点击页面右下角“New Repository”

填写项目信息:

project name: hibernate-demo

description : my first project

点击“Create Repository” ; 现在完成了一个项目在github上的创建。

说明:我们创建的是一个github仓库,一个仓库里只能存放(或叫对应)一个项目。

当你创建完成一个仓库的之后,github已经给你一个提示:当你看完了我的文章再来看这个提示就非常清楚了。

Global setup:
 Set up git
  git config --global user.name "Your Name"
  git config --global user.email defnngj@gmail.com
      
Next steps:
  mkdir hibernaet-demo2
  cd hibernaet-demo2
  git init
  touch README
  git add README
  git commit -m 'first commit'
  git remote add origin git@github.com:defnngj/hibernaet-demo2.git
  git push -u origin master
Existing Git Repo?
  cd existing_git_repo
  git remote add origin git@github.com:defnngj/hibernaet-demo2.git
  git push -u origin master
Importing a Subversion Repo?
  Click here 
When you're done:
  Continue

二  .  创建密钥

我们如何让本地git项目与远程的github建立联系呢?之里就用的密钥。通俗点叫口令吧!(天王盖地老,宝塔镇河妖。。)

$ cd ~/. ssh 检查本机的ssh密钥

如果提示:No such file or directory 说明你是第一次使用git。

如果不是第一次使用,请执行下面的操作,清理原有ssh密钥。

 $ mkdir key_backup
$ cp id_rsa* key_backup
$ rm id_rsa*

生成新的密钥:

Ssh-keygen –t rsa –C “defnngj@gmai.com” 

注意: 此处的邮箱地址,你可以输入自己的邮箱地址。在回车中会提示你输入一个密码,这个密码会在你提交项目时使用,如果为空的话提交项目时则不用输入。这个设置是防止别人往你的项目里提交内容。

打开本地C:\Documents and Settings\Administrator\.ssh\id_rsa.pub文件。此文件里面内容为刚才生成人密钥。

登陆github系统。点击右上角的 Account Settings--->SSH Public keys ---> add another public keys

把你本地生成的密钥复制到里面(key文本框中), 点击 add key 就ok了

在git中运行下面命令:

$ ssh –T git@github.com

如果提示:Hi defnngj You've successfully authenticated, but GitHub does not provide shell access. 说明你连接成功了。

三 . 设置用户信息

这一步不是很重要,貌似不设置也行,但github官方步骤中有,所以这里也提一下。

在git中设置用户名,邮箱

$ git config --global user.name "defnngj"//给自己起个用户名
$ git config --global user.email "defnngj@gmail.com"//填写自己的邮箱

在github中找到 Account Settings--->Account Admin ,找到一下信息:

Your API token is e97279836f0d415a3954c1193dba522f ---keep it secret! Changing your password will

generate a new token

$ git config --global github.user defnngj      //github 上的用户名
$ git config --global github.token e97279836f0d415a3954c1193dba522f
----//小玩一下git

上面都是准备工作,一次完成,以后就不用设置了。下面内容才是亮点。

先来说说git下常用的几个基本操作,和linux系统的操作是一样一样的:

$ ls   查看当前目录的内容

$ cd  /d   切换到d盘

$ cd  java/   打开当前目录下的java目录

$ cd  j(table键)  如果当你想打开java目录且当前目录下只有一个j开头的目录,输入J 然后按键盘上的table键,会自动帮你补齐。

$ cd ..  返回上一级目录

假如你现在新创建了一个项目,想把它提交到github上面?

假设你创建好了一个项目,并切换到项目的根目录下面:

$ git status   //查看当前项目下所有文的状态,如果第一次,你会发现都红颜色的,因为它还没有交给git/github管理。

$ git add .   //(.)点表示当前目录下的所有内容,交给git管理,也就是提交到了git的本地仓库。

Ps:git的强大之处就是有一个本地仓库的概念,在没有网络的情况下可以先将更新的内容提交到本地仓库。

$ git commit –m”new natter ”  //对你更新或修改了哪些内容做一个描述。

$ git remote add origin git@github.com:defnngj/hibernate-demo.git

//如果你是第一次提交项目,这一句非常重要,这是你本地的当前的项目与远程的哪个仓库建立连接。

Psorigin可以改为别人的名字,但是在你下一次push(提交)时,也要用你修改之后的名字。

$ git remote -v  //查看你当前项目远程连接的是哪个仓库地址。

$ git push -u origin master  //将本地的项目提交到远程仓库中。

------------------------------------------------------------

假如,你回到了家,想把公司提交的项目克隆到本地?

如果你是第一次想把github上面的项目克隆到本地或者要克隆别人的项目到地。

$ git clone git@github.com:defnngj/hibernate-demo.git  //在git下面切换到想存放此项目的文件目录下,运行这条命令就可以将项目克隆下来。

假如本地已经存在了这个项目,而仓库中又有一新的更新,如何把更的合并到本地的项目中?

$ git fetch origin    //取得远程更新,这里可以看做是准备要取了

$ git merge origin/master  //把更新的内容合并到本地分支/master

-------------------------------------------

项目中删除了一些文件,如何提交?

假如远程仓库中已经存了aaa这个文件,我fetch了下来,并删除了aaa这个文件,想再push上到远程仓库中,并使远程仓库中的项目被新的修改覆盖(也是是远程仓库中的aaa也被删除)

$ git status   //可以看到我们删除的哪些文件

$ git add .   //删除之后的文件提交git管理。

$ git rm   src/com/hzh/hibernate/dao/aaa.java    //移除我们删除的那个文件,不然git不允许我们往远程仓库提交。

Ps: 如果你想删除的是某个目录(java包),这里想移除整个目录的内容。

$ git rm  src/com/hzh/hibernate/bbb/ -r   // -r 会把bbb/目录下的所有内容一次性移动。

------------------------------------------------------------------------

远程创建了一个新仓库,本地创建了一个新项目,如何使新的项目与仓库对应起来?

其实,这个也很简单,只是我当时对那些命令不太理解,所以比较模糊,不知如何对应。

$ git remote add origin git@github.com:defnngj/hibernate-demo.git

//还是这个命令,在你push项目之前加上这一句就OK了。

git@github.com:defnngj/hibernate-demo.git 就是你常见的新仓库的地址啊。git切换到新项目下,在push之前,加上这一句,我们创建的新仓库就与新项目建立了连接。

git操作github的更多相关文章

  1. 使用Git操作GitHub代码入门教程

    GitHub除了网页操作外,还可以借助本地客户端git(或github for windows)来增删修改远程代码.使用Git操作来连接GitHub可以通过Https或SSH方式,使用SSH方式可以免 ...

  2. Pycharm和IDEA利用Git操作Github仓库

    1. Git Bash 选择一个本地代码仓库文件夹:D:/Github_Code/新建文件夹,然后在此目录打开git bash 依次进行: git init //首次需执行,之后可不用 git add ...

  3. Git操作GitHub时的Proxy配置

    无论是使用Android Studio中,VCS >> Git >> Clone, 还是直接Git Clone命令,clone GitHub项目时,出现错误提示:LibreSS ...

  4. git操作github仓库基本操作

    一.登录 首次登录 $ git config --global user.name "Your Name" $ git config --global user.email ‘yo ...

  5. Git 操作 GitHub

    Git安装 https://www.cnblogs.com/taopanfeng/p/11076702.html 设置用户名(设置一次 以后就不用再设置了) git config --global u ...

  6. git操作github指令

    常用git命令: $ git clone  //本地如果无远程代码,先做这步,不然就忽略 $ cd //定位到你blog的目录下 $ git status //查看本地自己修改了多少文件 $ git ...

  7. Git操作(及操作github)

    一.git操作: 1.创建一个项目: 2.打开项目,在项目目录下右键单击--打开 git bash: 3.初始化项目仓库  创建项目仓库 命令:   git init ; git status 查看文 ...

  8. git操作常用命令

    一.使用git 1.git是什么? Git是目前世界上最先进的分布式版本控制系统. SVN与Git的最主要的区别? SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己 ...

  9. gitLab的使用 和 git 、 github、gitlab的区别

    一.git . github.gitlab的区别  (百度相关内容得到的理解) ​ ​ 二.git最基本作用:版本控制 ​ 三.有集成了git的GIT安装包 github和gitlab都使用git该版 ...

随机推荐

  1. Python Web 性能和压力测试 multi-mechanize

    http://www.aikaiyuan.com/5318.html 对Web服务做Performance & Load测试,最常见的工具有Apache Benchmark俗称ab和商用工具L ...

  2. Serv-u FTP服务器

    它可以让我们通过http协议(web端)或者通过其他软件进行连接,从而可以操作服务器上的文件数据.

  3. [转贴]怎样在LINQ实现 LEFT JOIN 或者RIGHT JOIN

    In this post let us see how we can handle Left Join and Right Join when using LINQ. There are no key ...

  4. 内存卡的class是什么意思 内存卡class的5个等级

    内存卡的class是什么意思 SD协会针对TF内存卡(SDHC)的传输规范:传输速度(写入速度及读取速度的最低速度)被定义为Class2(2MB/sec).Class4(4MB/sec).Class6 ...

  5. ColorFilter类

    以前没用到过LightingColorFilter这个类 ,google了下 @Override protected void onDraw(Canvas canvas) { int mul = 0x ...

  6. 如何修复在Microsoft Azure中“虚拟机防火墙打开,关闭RDP的连接端口”问题

     注:下列步骤并不一定适用所有场景,提供思路,请灵活应用 我们在使用Microsoft Azure 中Windows 虚拟机,有时会发生错误打开防火墙或一些管家软件错误的关闭了"远程桌面 ...

  7. 【转】 Android SDK无法更新解决方法---不错

    原文网址:http://blog.csdn.net/shi_weihappy/article/details/41847997 自己的修改: 203.208.39.238 dl.google.com7 ...

  8. ssh 登录出现的几种错误以及解决办法

    首先.确保server端的ssh服务是开的(service shhd start) 然后在client端输入: ssh usrname@serverip (远程登录) scp filename usr ...

  9. WCF性能优势体现 【转】

    WCF性能优势决定了其受欢迎程度,这些优势主要都体现在:统一性:互操作性:安全与可信赖:兼容性等方面. WCF是使用托管代码建立和运行面向服务(Service Oriented)应用程序的统一框架. ...

  10. 学习手工创建表,表关系以及用exists 来查询

    ---创建表a If exists(select * from sysobject where [name]=='a' and xType = 'u') Begin Drop table aa End ...