创建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. 将EntityFrameworkCore生成的SQL语句输出到控制台,使用hangfire

    将EntityFrameworkCore生成的SQL语句输出到控制台 参考文档如下 EF Core 日志记录要求使用一个或多个日志记录提供程序配置的 ILoggerFactory. 日志记录-EF C ...

  2. .NET Core MD5加密 32位和16位

    public class MD5Help { //此代码示例通过创建哈希字符串适用于任何 MD5 哈希函数 (在任何平台) 上创建 32 个字符的十六进制格式哈希字符串官网案例改编 /// <s ...

  3. WPF解决WindowsFormsHost背景透明

    项目案例:WPF使用WindowsFormsHost播放视频,视频上显示边框.字幕等特效: 难点问题 1.WindowsFormsHost不支持背景透明: 2.WPF Panel.ZIndex无效,W ...

  4. IDEA报错Plugin "XXX" was not loaded: required plugin "Java EE: EJB, JPA, Servlets" is disabled.

    Java项目转Web项目 把java项目转成web项目时,发现Facets点击+号没有出现web选项. 经查询发现是插件没有正常加载导致的. 解决方案 1.没找到其他原因,重启即可. 2.我的是插件没 ...

  5. JavaScript设计模式与开发实践随笔(二)

    多态 多态的实际含义是:同一操作作用于不同的对象上面,可以产生不同的解释和不同的执行结果.换句话说,给不同的对象发送同一个消息的时候,这些对象会根据这个消息分别给出不同的反馈 var makeSoun ...

  6. 英语SouthRedAgate南红玛瑙

    南红玛瑙(SouthRedAgate)是玛瑙的一个种类,古称”赤玉”,质地细腻油润,是中国独有的品种.由于产量稀少,老南红玛瑙价格急剧上升.南红玛瑙曾被古人用之入药,养心养血. 现在的南红玛瑙已经和和 ...

  7. Cheat Engine 作弊表框架代码

    打开游戏 打开自动汇编 扫描的所有过程,这里就省略了 引用作弊表框架代码 查找使阳光减少的地址 拷贝这个地址 添加到自动汇编脚本里,并添加汇编指令 分配到当前作弊表 生成自动汇编脚本 进行激活测试 可 ...

  8. 网络编程系统化学习(1.1.)--socket基础

    大纲 学完该阶段内容,你将会很好的完成如下的面试题 socket面试试题相关: 1.写一个简单的socket程序,实现客户端发送数据,服务端收到数据后,将该内容转发给客户端 2.简要概述一下socke ...

  9. Prometheus学习笔记(3)什么是node_exporter???

    目录 Node_exporter安装配置启动 Node_exporter安装配置启动 node_exporter安装在被监控端,安装方式也比较简单,直接下载解压安装即可,默认启动后监听9100端口. ...

  10. ad批量上传

    import pandas as pd import requests import arrow from collections import deque import json campaign_ ...