之前因为工作中用的都是SVN版本控制工具,没接触过git和github,现在开始深入自学Django框架技术后,看到官网推荐使用git,然后这两天网上查阅了很多文章教程,学到入门操作需要学习的点,太多的知识点要后面慢慢深入学习了。

  看到一个网上教程说的一段话:“如果你是一枚Coder,但是你不知道Github,那么我觉的你就不是一个菜鸟级别的Coder,因为你压根不是真正Coder,你只是一个Code搬运工。”从事软件开发这么多年,一直被公司的框架技术限制,加上繁忙的工作,工作忙忙碌碌这么多年,我现在还只是个码农而已,算不上程序员,现在因为工作危机开始惊醒,不断自我学习,希望能提升自己的技术水平,成为一个真正的程序员。

一、先大概了解下git和github的关系

git和github的关系是:github 是基于git的一个仓库托管平台;

GitHub是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub,

而Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。

二、安装git和常用操作命令

1. Git 安装配置

在使用Git前我们需要先安装 Git。Git 目前支持 Linux/Unix、Solaris、Mac和 Windows 平台上运行。

Git 各平台安装包下载地址为:http://git-scm.com/downloads

2. Git 常用操作命令

Git 常用的是以下 6 个命令:git clonegit pushgit add 、git commitgit checkoutgit pull,后面我们会详细介绍。

说明:

  • workspace:工作区
  • staging area:暂存区/缓存区
  • local repository:版本库或本地仓库
  • remote repository:远程仓库

--------------常用git命令------------

一、创建仓库的命令:

git init 初始化仓库

git clone 拷贝一份远程仓库,也就是下载一个项目。

如从github拷贝: git clone https://github.com/XXXgithubName/project.git

二、提交与修改

git add ...   添加文件/文件夹到暂存区
git status    查看仓库当前的状态,显示有变更的文件。
git diff   比较文件的不同,即暂存区和工作区的差异。
git commit   提交暂存区到本地仓库。
git reset   回退版本。
git rm   将文件从暂存区和工作区中删除。
git mv   移动或重命名工作区文件。

三、提交日志

git log   查看历史提交记录
git blame <file>   以列表形式查看指定文件的历史修改记录

四、远程操作

git remote   远程仓库操作

git remote -v:    查看远程仓库详细信息,可以看到仓库名称

git remote remove orign:    删除orign仓库(如果把origin拼写成orign,删除错误名称仓库)

git remote add origin   仓库地址: 重新添加远程仓库地址

git push -u origin master   提交到远程仓库的master主干

git fetch   从远程获取代码库
git pull   下载远程代码并合并
git push   上传远程代码并合并

注意点:

git push 上传远程代码并合并; 需要输入用户密码,这里的密码实际是 github tokens: 需要去自己的github 申请。

最好是配置到git上,省的每次上传远程代码,都要输入用户密码。

git remote set-url origin https://口令字符串tokens@github.com/用户名/远程仓库名

三、安装github和常用操作

1. 注册github账号

github官网地址:https://github.com/。 之后就可以创建仓库了(免费用户只能建公共仓库),Create a New Repository,填好名称后Create,之后会出现一些仓库的配置信息,需要邮箱地址 your_email@youremail.com。

2. 配置ssh key

配置Git

首先在本地,打开 git 创建ssh key;

$ ssh-keygen -t rsa -C "your_email@youremail.com"

后面的your_email@youremail.com改为你在github上注册的邮箱,之后会要求确认路径和输入密码,我们这使用默认的一路回车就行。

成功的话会在~/下生成.ssh文件夹,进去,打开id_rsa.pub,复制里面的key

回到github上,进入 Account Settings(账户配置),左边选择SSH Keys,Add SSH Key,title随便填,粘贴在你电脑上生成的key。

为了验证是否成功,在git bash下输入:

$ ssh -T git@github.com

如果是第一次的会提示是否continue,输入yes就会看到:You've successfully authenticated, but GitHub does not provide shell access 。这就表示已成功连上github。

接下来我们要做的就是把本地仓库传到github上去,在此之前还需要设置username和email,因为github每次commit都会记录他们。

$ git config --global user.name "your name"
$ git config --global user.email "your_email@youremail.com"

进入要上传的仓库,右键git bash,添加远程地址:

$ git remote add origin git@github.com:yourGitHubName/yourGitHubRepo.git

后面的 yourGitHubName 和 yourGitHubRepo 表示你再github的用户名和刚才新建的仓库,加完之后进入.git,

打开config,这里会多出一个remote "origin"内容,这就是刚才添加的远程地址,也可以直接修改config来配置远程地址。

-----------------------------end---------------------------------

git和github的入门操作的更多相关文章

  1. 【学习】Git和Github菜鸟入门

    Git 是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常大的项目版本管理. 目录(自己创建吧) 生成ssh密钥:ssh-keygen -t rsa -C "邮箱" ...

  2. git及github配置入门

    github是一个有海量开源代码库的网站,同时也是一个软件开发管理软件,作为软件来说它集成了git这个分布式的版本控制系统,可以上传.下载和管理自己的代码. 笔者刚接触不久,把认为入门应该知道的东西稍 ...

  3. Git版本控制 Git、github,gitlab相关操作

    目录 关于版本控制 版本管理工具 集中式管理 分布式管理 git版本管理 git介绍 软件安装 Git工作状态 原理流程步骤 git基本操作 对文件进行修改 分支 共享仓库 创建共享仓库: 共享仓库上 ...

  4. Git和Github快速入门

    一.什么是Git? 假设你在的公司要上线一个新功能,你们开发团队为实现这个新功能,写了大约5000行代码,上线没2天,就发现这个功能用户并不喜欢,你老板让你去掉这个功能,你怎么办?你说简单,直接把50 ...

  5. git和github基础入门

    一.git: 1.安装配置git: 1.1从官网或者该网址处下载:https://pan.baidu.com/s/1kU5OCOB#list/path=%2Fpub%2Fgit 1.2安装,一路nex ...

  6. Git和Github入门

    推文:官方手册,十分详细 推文:git和github快速入门 一.git使用 1.git安装 (1)windows 网站:https://git-scm.com/download/win下载安装即可 ...

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

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

  8. Git版本控制软件结合GitHub从入门到精通常用命令学习手册(转)

    简要参考:http://www.tuicool.com/articles/mEvaq2 http://gitref.org/zh/index.html GIT 学习手册简介 本站为 Git 学习参考手 ...

  9. git和github新手安装使用教程(三步入门)

    git和github新手安装使用教程(三步入门) 对于新手来说,每次更换设备时,github的安装和配置都会耗费大量时间.主要原因是每次安装时都只关心了[怎么做],而忘记了记住[为什么].本文从操作的 ...

  10. Git入门操作

    仅学习Git的一些入门操作比较容易,平时更多地使用GitHub,不过今天我想自个搭个服务练练手.当看完一些材料合作了一些验证之后,才发现其实所谓的服务和之前的svn完全不一样了.过程记录如下: Lin ...

随机推荐

  1. 抖音技术分享:飞鸽IM桌面端基于Rust语言进行重构的技术选型和实践总结

    本文由ELab团队公众号授权发布,原题<Rust语言在IM客户端的实践>,来自抖音电商前端团队的分享,本文有修订和改动. 1.引言 本文将介绍飞鸽IM前端团队如何结合Rust对飞鸽客户端接 ...

  2. [开源项目]YOLOv8_Efficient

    Yolov8_Efficient Simple and efficient use for yolov8 About This is an unofficial repository maintain ...

  3. vue基础5

    1.组件通信 a.父传子: // 总结:1.父传子:传递的是基础数据类型 给父组件中的子组件绑定属性,此时属性的值在父组件中已经定义,子组件需要通过porps接收,要用数组接收 在子组件中直接渲染接收 ...

  4. Solution Set -「AGC 001~003」C~F

    目录 「AGC 001C」Shorten Diameter 「AGC 001D」Arrays and Palindrome * 「AGC 001E」BBQ Hard * 「AGC 001F」Wild ...

  5. mac系统如何安装nacos

    一:安装步骤1.先到nacos官网nacos.iohttp://nacos.io/ 2.点击开源版(进去下拉文档,找到 latest stable release 点进去) 3.点击下载zip文件到本 ...

  6. 链路追踪 Sleuth 和 Zipkin

    微服务的链路追踪概述: 分布式链路追踪(Distributed Tracing),就是将一次分布式请求还原成调用链路,进行日志记录,性能监控并将一次分布式请求的调用情况集中展示.比如各个服务节点上的耗 ...

  7. shell脚本中的逻辑判断

    shell脚本中也可以实现逻辑判断. 案例4:shell脚本中的逻辑判断 如果你学过C或者其他语言,相信你不会对if 陌生,在shell脚本中我们同样可以使用if逻辑判断.在shell中if判断的基本 ...

  8. 认识soui4js(第4篇):定义一个窗口类,响应控件的事件

    soui4js基于soui4设计实现. 首先我们看一下soui4中如何定义一个窗口类. soui4最基本的窗口类是SHostWnd和SHostDialog,它需要一个布局xml. 假定布局xml在资源 ...

  9. Forrester Wave™报告:天翼云三项产品能力获评最高分!

    8月5日,国际权威研究机构Forrester发布了<Forrester Wave: 中国公有云平台厂商评测,2024Q3>报告.中国电信天翼云凭借前瞻性的发展战略和领先的产品能力,跻身行业 ...

  10. Luogu P3975 TJOI2015 弦论 题解 [ 紫 ] [ 后缀自动机 ] [ 动态规划 ] [ 拓扑排序 ]

    弦论:本来不想写板子题题解的,但奈何这道题的题解都太垃圾了,导致我理解了一个晚上都没想明白 dp 转移啥意思/fn/fn/fn,所以记录一下. 思路 \(t=0\) 时 考虑 SAM 思路,建出后缀自 ...