创建GitHub账号

本地Git仓库和GitHub仓库之间的传输是通过SSH加密的

step1:创建项目的SSH Key

ssh-keygen -t rsa -C "your email@example.com"

创建完成后,在用户目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件。这两个就是SSH Key的密钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心的告诉他人

step2:登陆GitHub注册或登陆账号,打开“settings”的“SSH Keys”页面,然后,点击“New SSH Key”,填上任意title,在key文本框里黏贴id_rsa.pub的文本内容,点“Add Key”,你就应该看到已添加的Key。

创建远程仓库

  • 登陆GitHub

  • 在右上角找到“+”点击“new repository”按钮,创建一个新的仓库

从远程仓库克隆

  • 将GitHub上的项目,克隆到本地一份

  • git clone git@github.com:账号名/项目名.git

与远程库交互

    • 从远程库获取到本地

      git pull

    • 将本地代码提交到远程库

    • git push origin master
    • 提示:每次提交前,需要先获取,解决冲突后再次提交

本地仓库

    • 创建空目录(本地仓库)和git本地角色

      mkdir -p repo/example
      cd repo/example
      git config --global user.name "Your Name"
      git config --global user.email "email@example.com"
    • 在目录下初始化本地仓库

    • git init
    • 创建成功后,目录下就是一个版本库,这个目录里所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻可以追踪 历史,或在必要时回退版本

文件管理

  • 本地仓库分为三部分:工作区,暂存区,仓库区,其中暂存区、仓库区是版本库部分

工作区和暂存区

    • 使用ide打开目录,创建项目,将文件添加到暂存区

    • git add 文件1 文件2 ...
      
      git add 目录
    • 使用暂时区的内容恢复到工作区的内容

git checkout --文件名

    • 查看暂存区的状态

       git status

暂存区到仓库区

  • 将暂存区的记录添加到仓库区

    git commit -m '提交时的备注信息'

  • 查看仓库区的历史

    当前版本的历史版本:git log
    简版显示:git log --pretty=oneline
    历史命令:git reflog
  • 在Git中,使用HEAD表示当前版本,也就是最新版本,上个版本就是HEAD^,上上个版本是HEAD^^,当然往上100个版本写^数不过来,所以写成HEAD~100

  • 对比工作区和仓库区中某版本文件的不同

    git diff HEAD --文件名

  • 回退历史版本到暂存区

   git reset HEAD^或版本号

git show 版本号    //查看具体版本号的详细修改

git branch //查看本地所有分支,为master分支

git checkout -b master1 origin/master //1:新建一个新分支master1)----简历新分支master1跟踪远程分支master, --- 此时git branch查看分支,为master 、master1 2个分支;

------------------在新分支master1操作---------

git cherry-pick 版本号 //2:复制内容倒master1----复制版本号的对应修改到master1

git status //此时gitstatus 会显示有一个待提交 是刚复制的点

git pull origin master //拉取master的最新内容倒master1

git push origin master1:master //3:将找回内容提交到master----将本地的修改(刚复制的点)master1提交到master(注意master1后不要带空格 不然会将远程的master干掉)

git branch -r //查看远程分支

git branch -d master //4:删除本地分支master----删除本地master分支 --- 此时git branch 查看本地分支,只有master1一个本地分支

git branch -m master1 master //5:将master1重命名为master----将master1重命名为master --- 此时git branch 查看本地分支,是master分支

GIT与项目的更多相关文章

  1. Git 本地项目上传至托管平台(OsChina/GitHub)

    为了方便自己的代码管理,通常是把自己的写的一些小项目分享到GitHub 或者git.oschina上面! 区别: GitHub 只能创建公开的项目,国外的,速度慢! git.oschina 开源中国的 ...

  2. 在Spring tools suite中使用git 共享项目

    我们都在eclipse 和 myeclipse中使用过cvs 和 svn 版本控制工具进行团队开发,今天我学习了另外一种版本控制工具git,下面我演示如何在Spring tools suite中使用g ...

  3. git使用--git命令项目提交问题总结

    提交遇到Error  "remote ref does not exist"解决办法:git fetch -p MY_REMOTE    eg.    git fetch -p o ...

  4. 用Git导出项目

    Git没有SVN的导出功能,不能像 svn export url 那样,将某个版本的代码导出为不带版本控制文件的文件夹.   Git提供了archive命令,可以把版本的文件流导出.   可以将Git ...

  5. Eclipse中使用git把项目导入到osc@git中

    方便Eclipse用户使用Git把项目导入到osc@git中进行管理. Eclipse Git osc@git 一.原有项目:  项目名为TestGit 二.在osc@git上面创建一个新项目库. 填 ...

  6. Eclipse配置Git发布项目到Github

    很牛叉的博客http://blog.csdn.net/luckarecs/article/details/7427605 一.安装插件 菜单栏Help --> Install New Softw ...

  7. 如何用Android Studio同时使用SVN和Git管理项目

    这篇来讲讲如何在 Android Studio 上同时用 SVN 和 Git 来管理项目.我知道,你肯定会说我吃饱了撑着,没事找事做,为啥要同时用 SVN 和 Git 来管理项目.问题是,我也不想啊, ...

  8. git学习四:eclipse使用git提交项目

    支持原创:http://blog.csdn.net/u014079773/article/details/51595127 准备工作: 目的:eclipse使用git提交本地项目,提交至远程githu ...

  9. 使用Git将项目托管到码云及从码云导入项目到本地

    前言 码云+Git+IntellJ IDEA 欢迎转载,请注明作者和出处哦☺ Git 的安装及使用的教程 ​​​​ 最好不要在官网下载,官网下载要vpn而且速度还很慢 . 推荐在 https://gi ...

  10. react简书笔记一 环境, git 和 项目 关联

    1.. 建立git项目  ( 码云, github 都可以 ), 具体步骤: https://www.cnblogs.com/andy-lehhaxm/p/10720717.html 1.1  git ...

随机推荐

  1. Android开发DDMS找不到Emulator Control的方法

    1.右键DDMS,点击reset. 2.window->show view->other->android->Emulator Control

  2. Winows上简单配置使用kafka(.net使用)

    一.kafka环境配置 1.jdk安装 安装文件:http://www.oracle.com/technetwork/java/javase/downloads/index.html 下载JDK安装完 ...

  3. spark和深度学习集成调研

    http://dy.163.com/v2/article/detail/E2TMAOTU0518KCLV.html http://www.elecfans.com/d/676451.html http ...

  4. [TensorFlow 2.0] Keras 简介

    Keras 是一个用于构建和训练深度学习模型的高阶 API.它可用于快速设计原型.高级研究和生产. keras的3个优点: 方便用户使用.模块化和可组合.易于扩展 简单点说就是,简单.好用.快(构建) ...

  5. idea git提交代码步骤(转载)

    参考一: https://blog.csdn.net/u013452337/article/details/79956604

  6. kill 命令在Java应用中使用注意事项

    前言 我们都知道,kill在linux系统中是用于杀死进程. kill pid [..] kill命令可将指定的信号发送给相应的进程或工作. kill命令默认使用信号为15,用于结束进程或工作.如果进 ...

  7. Sql 语句中 IN 和 EXISTS 的区别

    IN 语句:只执行一次 确定给定的值是否与子查询或列表中的值相匹配.in在查询的时候,首先查询子查询的表,然后将内表和外表做一个笛卡尔积,然后按照条件进行筛选.所以相对内表比较小的时候,in的速度较快 ...

  8. 202. 快乐数.Set去重作用实际作用

    编写一个算法来判断一个数是不是“快乐数”. 一个“快乐数”定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是无限循环但始终变不到 1.如 ...

  9. ELK快速入门(四)filebeat替代logstash收集日志

    ELK快速入门四-filebeat替代logstash收集日志 filebeat简介 Filebeat是轻量级单用途的日志收集工具,用于在没有安装java的服务器上专门收集日志,可以将日志转发到log ...

  10. 数据结构中的堆(Heap)

    堆排序总结 这是排序,不是查找!!!查找去找二叉排序树等. 满二叉树一定是完全二叉树,但完全二叉树不一定是满二叉树. 构建顶堆: a.构造初始堆 b.从最后一层非叶节点开始调整,一直到根节点 c.如果 ...