Git和Github的使用

使用 git一个仓库管理多个项目 我们需要在 git 里面创建一个空分支,该分支不继承任何提交,没有父节点,完全是一个干净的分支,这时候就需要使用 orphan。该命令会创建一个新的分支,并且该分支有前一个分支下的所有文件,我们不想提交任何内容,所以我们需要把当前内容全部删除。此时 master 分支已经有一个项目了,下面我们创建新的分支管理另一个项目。此时可以在该分支目录上初始化你的项目,在执行 git 命令提交代码。此时我们就完成了在同一个仓库管理不同项目的需求了。下载仓库到本地之后,进入项目目录,查看分支信息。 阅读详情

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

这位大哥写的刚好就是我想要的啊~  不过最后有点YD了~ :-)


之前初学过一点git版本控制工具,利用github做仓库,照着github上的文档练习的了一下。不过那只篇只是照虎画猫(我的水平只能照着老虎画个猫模样,嘻嘻!)。

最近在学hibernate,公司与家之间都要调用我练习的小项目,交给git/github来管理,我只想说真的爽歪歪了。

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

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

 

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

Git:分布式版本控制工具,http://d.download.youkuaiyun.com/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中运行下面命令:

 

$ git –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

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

Ps: origin可以改为别人的名字,但是在你下一次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很强大,这些只是冰山一角,不过对新手来说暂时够用了。

Ps:前两天聊天,一哥们说又发现个藏片的好地方,可以把岛国的小电影用这个管理,就不怕个人隐私被别人发现了尴尬。哈哈,你要不要试试。



一个 git 仓库下拥有多个项目的 git hooks 配置方案 通常情况下,一个 git 仓库就是一个项目,只需要配置一套 git hooks 脚本就可以执行各种校验、测试脚本。对于 monorepo 项目也是如此,monorepo 项目下的多个 packages 之间,它们是有关联的,所以当成一个项目也没问题。但是也有一种情况,一个 git 仓库下的多个项目之间是彼此独立的,比如 git 仓库下存在前端项目、后端项目、文档项目等等。这时候就需要为每个项目配置不同的 git hooks 脚本了,因为不同的项目有可能校验规则不一样。 阅读详情

相关推荐

git和github在ubuntu上的使用

git是一个应用最广泛的分布式版本控制系统,github是提供远程git仓库托管服务的网站。本文简单介绍git和github在ubuntu上的安装和使用。

du_mengnan的专栏 9964

github新手用法详解(建议收藏!!!)

如果你是一枚Coder,但是你不知道Github,那么我觉的你就不是一个菜鸟级别的Coder,因为你压根不是真正Coder,你只是一个Code搬运工。说明你根本不善于突破自己!为什么这么说原因很简单,很多优秀的代码以及各种框架源码都存放于github当中! 目录github登录与注册git安装步骤详解 首先,我先对GitHub来一个简单介绍,GitHub他就是一个远程仓库,远程仓库通俗的理解就是一个可以保存自己代码的地方,在实际开发当中一个项目往往是有多个人来共同协作开发完成的,那么就需要一个统一代码保存的

怪咖@的博客 26万+

在 mac 上使用 Git 和 GitHub 连接

在 mac 上使用 Git 和 GitHub 连接,mac git 的地址: http://code.google.com/p/git-osx-installer/ 由于可能这个网址访问 不了,所以需要使用源码安装。

Zhiyuan_Ma 5287

github入门教程(非常详细)从零基础入门到精通,看完这一篇就够了

如果你是一枚Coder,但是你不知道Github,那么我觉的你就不是一个菜鸟级别的Coder,因为你压根不是真正Coder,你只是一个Code搬运工。说明你根本不善于突破自己!为什么这么说原因很简单,很多优秀的代码以及各种框架源码都存放于github当中!

ZL_1618的博客 1万+

两万文字教你掌握Git和GitHub的使用

1. 什么是Git和GitHub? 2. 安装Git和GitHub 2.1 安装GitHub 2.2 安装Git 3. Git初尝试 3.1 总结 3.2 练习 4. Git重要特性 4.1 帮助、日志和比较 4.2 忽略文件 4.3 总结 4.4 练习 5. 分支 5.1 总结 5.2 练习 6. GitHub 6.1 Markdown 6.2 Pull Requess 6.3 Pages 6.4 Forking 6.5 总结 6.6 练习.....................

herosunly的博客 1万+

ArcMap对遥感图像进行语义分割标注

使用arcmap对遥感图像进行语义分割标注

qq_41708916的博客 4044

Git、GitHub新手使用教程——三分钟学会白嫖源码

Git是一个开源的分布式版本控制系统(简单理解:让你的代码在云端存档,可以看到你代码的历史版本,支持多人协作等),可以有效、高速地处理从很小到非常大的项目版本管理。而GitHub是基于这个版本控制系统打造的网站,同时,你也可以在上面找到许多开源的内容。Git三大概念:提交commit、仓库repository、分支branch1.提交commit:将代码的变化以commit为单位记录下来,当你代码写崩的时候就可以回档到之前的某一次commit,简单来说就像是游戏存档。

2301_76655007的博客 12万+

Python+whisper/vosk实现语音识别

Whisper 是一个由 OpenAI 开发的人工智能语音识别模型,它能够将语音转换为文本。Whisper 模型特别之处在于它的设计目标是能够理解和转录多种语言的语音,包括但不限于英语。Whisper 模型在训练时使用了大量不同语言的语音数据,这使得它具有很好的跨语言能力。Vosk 是一个开源的语音识别库,它可以在离线环境下工作,不依赖于任何外部服务。Vosk 基于Kaldi语音识别框架,支持多种语言,包括中文。Vosk提供了多种预训练模型,可以根据需求选择适合的模型进行语音识别。

weixin_44458771的博客 5937

Git和Github详细入门教程(别再跟我说你不会Git和Github)

Git概述 1.Git是目前世界上最先进的分布式版本控制系统。 解决的问题: 记录了每次修改的:版本,内容,操作用户,修改时间,文档名等。 2.Git和Github的区别 Git是一个分布式版本控制系统,简单的说就是一个软件,用于记录一个或若干文件内容变化,以便来查阅特定版本修订情况的软件。 Github是一个为用户提供Git服务的网站,简单说就是一个可以放代码的地方(也可以放其他内容)。Gith...

轻松玩编程 2万+

Unity嵌套ScrollView滑动冲突解决方案:ExecuteEvents.Execute事件透传

在Unity UGUI中,竖向与横向ScrollView嵌套时出现滑动失效,本质是EventSystem事件分发机制的拦截限制。其原理在于PointerDown被外层捕获后,后续PointerMove默认不向下透传;ExecuteEvents.Execute提供了一条绕过常规冒泡流程的官方事件旁路,支持低延迟、方向自适应的精准透传。该技术具备高兼容性与零侵入特性,广泛应用于电商商品页、内容流卡片组、多级导航等需‘列表中嵌套轮播/标签’的真实场景,是解决UGUI嵌套滚动问题的核心工程实践方案。

weixin_33164198的博客 629

Halcon 3D点云处理实战:从PLY文件读取到曲面匹配的完整流程(附避坑指南)

本文详细介绍了Halcon在3D点云处理中的完整流程,从PLY文件读取到曲面匹配,特别强调了3D算子的应用技巧和避坑指南。通过实战案例和参数优化建议,帮助开发者高效处理工业视觉检测中的复杂点云数据,提升匹配精度和性能。

weixin_42535720的博客 277

RStudio Git GitHub配合使用

GitHub是基于git实现的代码托管。git是目前最好用的版本控制系统了,非常受欢迎,比之svn更好。GitHub可以免费使用,并且快速稳定。即使是付费帐户,每个月不超过10美刀的费用也非常便宜。利用GitHub,你可以将项目存档,与其他人分享交流,并让其他开发者帮助你一起完成这个项目。优点在于,他支持多人共同完成一个项目,因此你们可以在同一页面对话交流。创建自己的项目,并备份,代码不需要保存在本地或者服务器,GitHub做得非常理想。学习Git也有很多好处。

2301_77906637的博客 3348

SAP_SD模块_SAP 消息号VF501(科目确定期间出错)

摘要: SAP SD模块中执行VF02销售开票时出现“科目确定期间出错”(VF501)问题,主要原因是系统无法找到匹配的总账科目。解决方案包括:检查物料主数据和客户主数据中的科目分配组是否维护,核对发票中的对应字段,并通过VKOA事务代码分析科目确定逻辑。若定价过程中配置的科目代码(如Z01)未在VKOA中完整映射(如缺少H1+S5+Z01组合),则会导致内部价格无法关联总账科目。需在SPRO路径下完善科目代码分配配置,确保定价类型与科目代码匹配。本文提供了详细的排查步骤和配置方法,帮助解决开票过账错误。

我小时候很黑的博客 353

git使用及github

克隆现有存储库#创建一个新的本地存储库git init。

qq_37499012的博客 1338

ESP32-S3驱动OV3660摄像头原理图设计,已量产

本文重点拆四条主线:多来源输入电源如何收敛到 3V3,摄像头三路供电如何拆分,ESP32-S3 如何接住 DVP 数据流与外部存储,以及音频/补光/传感外围怎样挂到主控边上。至于最终图像帧率、算法策略和软件时序,当前原理图未体现。

不脱发的程序猿 980

AMBA-CHI协议详解(七)

本节描述该协议包含的支持系统保序需求的机制。

Crazzy_M的博客 1156

Git和Github的基本用法

简单易操作的Git和Github的基本用法

yanxiang3306 4947

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

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

一、git 、 github、gitlab的区别 (百度相关内容得到的理解) 二、git最基本作用:版本控制 三、有集成了git的GIT安装包 github和gitlab都使用git该版本控制系统,来实现对代码的管理。 所以,原先怎么用git操作github的,那么用git操作gitlab是一样的。 https...

hellocsz的博客 3万+

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

github和git

首先在E盘创建git练习目录下创建一个名为demo的子目录,并在其中新建一个名为hit.txt的文件,接下来我们的 Git 操作都是基于此目录和文件的。此外,在这里还要强调一点,那就是:在我们进行任何的git操作之前,我们都得先切换到 Git 的仓库目录。换言之,我们得到先进入到(我们定义的)Git 仓库的最顶层文件目录下,然后从此目录中进入 Git Bash,这样之后Git 会自动定位到进入的位置。

qq_44729609的博客 1125

Github & Git 使用全解

最近在学习和项目过程中,苦于代码没有地方整理,遂决定深入学习一下使用 Github 管理代码。GitHub 是一个面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub。本文对于 Github 的注册等等过于基础的问题不再赘述,有需要的同学可以自行前往搜索。初识 Github 时,我们需要了解一些 Github 中常用的英文术语。Repository:简称Repo,可以理解为“仓库”,我们的项目就存放在仓库之中。

m0_73771268的博客 1761

Git连接Github

1.安装Git 1.下载git 下载链接:https://git-scm.com/ 进入页面之后,如下图所示: 点击红色方框中的Download 2.31.1 for Windows,跳转到下图所示页面: 根据你电脑的位数选择下载的版本,如果是32位则选择红色方框中对应的:32-bit Git for Windows Setup。如果是64位则选择红色方框中对应的64位:64-bit Git for Windows Setup。我的电脑是64位,所以下载之后得到下图所示安装包: 至此,git下载完成,

qq_39909808的博客 3549

git和github的关系

写在前面:我身边好多人问我git和github的区别,想必对于好多人没学过的大佬们恐怕也是一脸懵逼,但是不知道也是不行的,所以我今天就来讲一讲这二者的区别和联系。 用一句话形容这二者的关系:git是弓,你的代码是箭,github是靶子。 git是软件,它可在本地建立仓库,你写的代码的各个版本都可以存着 github是网上仓库,你写的代码的各个版本都可以存着。 历史渊源:Git比GitHub...

weibo_dm的博客 6万+

Git 和 Github 的区别?以及 Git 的起源

本文介绍4点: 1.Git 和 Github 的区别 2.Git 的起源 3.Git 的教程 4.git for windows 、git-scm 和 msysgit 的区别

mukes的博客 8524

git 和 github 的区别及安装

git 和 github 的区别及安装1. 什么是 Git, 与 Github 的关系(1) Git 的定义(2) Github 是什么(3) Git 和 Github 的关系2. Git 的安装(1) Windows 系统上的安装(2) Linux 系统上的安装(部分,参考 [git官网](https://git-scm.com/download/linux "Download for Linu...

苦逼小码农的博客 9982
上一篇: Java的ClassPath, Package和Jar(zz)
下一篇: 蛋疼的Mplayer安装(CentOS 6.5)
devilkin64
博客等级 码龄19年 16粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值