Git--上手Github
1.创建远程仓库
无论在之后的第二步你是想从本地到远程还是远程到本地,创建远程仓库是第一步肯定的。(推荐克隆本地,然后把本地的代码拷入,然后add push)
因为clone ,github会帮忙创建一个banrch
.gitignore 设置项目类型
像我是在github上面建仓库,所以在GitHub网站操作新建自己的一个仓库,.gitignore 设置项目类型,.gitignore 是 Git 仓库中的一个特殊的文本文件,它里面记录了你不希望提交到仓库的目录和文件的名称或类型,例如你的 /build 目录;
如果是文件夹,直接在后面写上文件夹的名称就可以过滤掉,还可以过滤具有某些特殊后缀的文件,以及文件名指定文件
仓库的名称,可以是任意的:
如果第二步你是从远程clone到本地那么你需要注意,你的仓库名称就是你的项目名称。
如果第二步你是从本地push到远程那么你需要注意,你的项目名和你的仓库名可以是不一样的。
ssh和https的区别:推荐ssh
在管理Git项目上,很多时候都是直接使用https url克隆到本地,当然也有有些人使用SSH url克隆到本地。这两种方式的主要区别在于:使用https url克隆对初学者来说会比较方便,复制https url然后到git Bash里面直接用clone命令克隆到本地就好了,但是每次fetch和push代码都需要输入账号和密码,这也是https方式的麻烦之处。而使用SSH url克隆却需要在克隆之前先配置和添加好SSH key,因此,如果你想要使用SSH url克隆的话,你必须是这个项目的拥有者。否则你是无法添加SSH key的,另外ssh默认是每次fetch和push代码都不需要输入账号和密码,如果你想要每次都输入账号密码才能进行fetch和push也可以另外进行设置。
.git
LICENSE 和 .gitignore 文件外,还有一个叫做 .git 的隐藏目录。 这个 .git 目录,就是你的本地仓库(Local Repository),你的所有版本信息都会存在这里。而 .git 所在的这个根目录,称为 Git 的工作目录(Working Directory),它保存了你当前从仓库中签出(checkout)的内容。
checkout切换分支,clone获取远程仓库代码
git工具
下载git.exe,Windows在使用git工具时,可以看到有两个命令输入窗:
1. Git CMD
2. Git Bash
两者的区别:Bash是基于CMD的,Bash在CMD的基础上新增了一些命令和功能,故建议使用Bash更方便。
Git GUI 是一个图形操作页面。
在项目工程上打开"Git Bash Here"这个命令行窗口上操作的,另外不建议cmd,建议git bash,可以补全
所有的命令都有快捷提示补充功能tab键,比如输入"git status"这个命令时,只需要输入"git stat"再按tab键就补充剩下的了,其他也是
2.初次把远程仓库取到本地
git clone 你刚复制的地址
这里需要注意的是:
1.你当前所在的目录是你项目的父目录。
2.你需要配置ssh。https://blog.csdn.net/qq_34291777/article/details/55052201?locationNum=1&fps=1
Please make sure you have the correct access rightsand the repository exists 或Permission denied (publickey).
想从Git库中克隆项目。没想到原来要进行密钥生成。就是和你https://github.com上的账号进行验证。在本机生成密钥与自己账号绑定。这样就可以从git上下项目了。(这也是为什么我们要fork别人的项目,fork了才方便自己clone和提交)
git config –global user.name “yourname”回车
git config –global user.email“your@email.com”回车
这两个命令相当于配置了密码,任何更改,在家目录下.gitconfig文件中更改
[user]
email = g1695698547@163.com
name = Gaoyongxian666
ssh-keygen -t rsa -C “your@email.com”(请填你设置的邮箱地址)回车(命令中的引号可以不加)最后在家目录 下找 .ssh 文件夹中的 id_rsa.pub 用记事本打开(不是那个文件)
3.初次把本地仓库推到远程
在你的项目目录下:
git init 初始化
git add . 提交全部
git status 查看状态
git remote add origin [写下你的仓库地址] 让本地仓库连接远程仓库
git commit -m "Initial commit" 提交信息(可以不加引号,加引号可以写多行注释)
git push origin master 提交到主分支
注意:
1.origin和master中不能有/
2.fatal: remote origin already exists. 或者用3
git remote rm origin
git remote add origin [url]
3.如何更改远程仓库 git remote set-url origin [url]
4.免密
1)新建文件并保存密码
$ touch ~/.git-credentials
$ vim ~/.git-credentials
2)添加内容
https://{username}:{passwd}@github.com
3)添加git配置
$ git config --global credential.helper store
另外还有一个更简单但安全性低一些的方案:执行这行代码:git config credential.helper store
在这之后你只需要再输入一次密码, Git 就会把你的密码保存下来,这之后就再也不用输入了。说它「安全性低」,是因为这条指令会让 Git 把你的密码以明文形式保存在你的电脑上。具体这两种保存密码的方案选择哪个,看你自己了
5.命令:
上面提到的都是一个文件一个文件的添加到staged,所以用"git add 文件名",添加所有文件到暂存区可以直接用“git add .”
提交直接用"git commit -m '你提交的信息'",推到中央仓库也可以直接用 "git push origin master"就好了
上面提到输入用户名和密码这个,我只知道把项目clone下来时不用"https 的那个url",而是用“ssh 的那个url”这样就不需要每次操作输入用户名和密吗
5.1 log查看提交记录
在这里你只能看到一个提交,这个提交是 GitHub 帮你做的,它的内容是创建你的初始 .gitignore 和 LICENSE 这两个文件。图中第一行中的 commit 右边的那一大串字符(09773235…21411),是这个 commit 的 SHA-1 校验和(如果不知道什么是 SHA-1,你可以暂时把它简单理解为这个 commit 的 ID);后面括号里的内容(HEAD -> master ...)稍后再讲;第一行的下面,依次是这个 commit 的作者、提交日期和提交信息,其中提交信息记录了这个提交做了什么,是提交者填写的(当然,这条提交信息是 GitHub 帮你写的)。
简单看一下这些信息,然后按 q 键退出吧,往下继续。
5.2 commit提交
现在你在项目的目录下输入:
git log, Show commit logs
可以在 git commit 后面接 -m ‘<变更日志>’ ,就不需要使用 vi 输入
注意:提交之前无论是commit还是push都要进行status 。
5.3 status 状态 与 add 追踪
git status Show the working tree status,用来查看工作目录当前状态的指令,只要不是暂存成功的,都需要add
git add Add file contents to the index
"untracked" 状态,它的意思是 Git 仓库对它没有进行任何记录,你在提交的时候不会把它提交上去,查看提交历史也不会看到它。总之,对于 Git 仓库来说,它是不存在的。
"staged"(已暂存)状态,意思是这个文件中被改动的部分(也就是这整个文件啦)被记录进了 staging area(暂存区)。
暂存区: staging area,是 .git 目录下一个叫做 index 的文件(嗯,它的文件名并不叫 stage )。
每个文件有 "changed / unstaged"(已修改), "staged"(已修改并暂存), "commited"(已提交) 三种状态,以及一种特殊状态。"untracked"(未跟踪)。
5.4 push到中央仓库
git commit 提交指令,提交到本地仓库
git push 提交一次或多次到本地后,把本地提交 push
到中央仓库
先pull 再push,防止冲突
5.5 pull更新本地仓库
git pull 是更新
5.6 一般的工作流程
git clone--写代码--git add--中间可以随时git status(总共四种工作状态)--git commit--git push---git pull---写代码
5.7 管理级别
Git 的管理是目录级别,而不是设备级别的。也就是说,/git-practice 目录内的 .git 只管理 /git-practice 里的内容,/git-practice-another 目录内的 .git 也只管理 /git-practice-another 里的内容,它们之间互不知晓,也互不影响。
5.8 完成提交
push/或者 commit 之后,i 输入提交信息, 然后esc 连续两个大写的Z 就保存且退出了.如果是commit -m 就不用这么麻烦。
fatal 致命的
Git--上手Github的更多相关文章
- linux下git以及github的连接与使用
简单理解 Git 的思想和基本的工作原理,能够更好的进一步和使用Git.在开始学习Git 的时候,最好不要把Git的各种概念和其他的版本控制系统诸如 Subversion 等相比,否则容易混淆每个操作 ...
- SVN 、Git、Github的使用
1.1 SVN 总结以及使用建议 每一次保存历史记录实际上就是一次提交 什么时候去保存历史记录? 完成了一个具体的功能模块 代码运行没有bug 当天工作结束提交一次 没有 bug 的前提下去提交一次 ...
- git和github的第一次接触
我的github的helloworld链接: https://github.com/xuziqian111/hello-world/blob/master/helloworld.java 我的gith ...
- 【转】理清基本的git(github)流程
概述 当我初次接触git时,我需要快速学习基本的git工作流,以便快速接收一个开源Web项目维护.但是,我很难理解工作流程,因为我不太了解git使用关键点. fork,clone,pull.branc ...
- 初见git和github
一.我的github helloworld程序的地址:https://github.com/wyf1213/wyf-project1 二.git/github的相关介绍资料 1.github是什么 ...
- 我对git 、github的初印象
前言:都说,要在IT这行混得风生水起,就必须不断接触新事物.学习新东西.然而,这个重要的点也是难做的点.当老师要我们用博客交作业的时候,我就觉得挺新鲜了,在知道很多牛逼的程序猿还会用到git和gith ...
- Git和Github详细教程
一 概述 说到Git和Github,前几天我们知道微软以75亿美元收购全球最大的代码托管和写作平台GitHub,而GitHub是全球最大的代码仓库,很多开发人员都将代码存放在Github,许多开发者因 ...
- 简单使用Git和Github来管理自己的代码和读书笔记
原文链接:http://my.oschina.net/bxxfighting/blog/378196 先注册github.com的账号官方网站: https://github.com/ 注册界面, ...
- git for windows 的默认工作路径(HOME)的设置以及Git与GitHub之间的SSH加密协议
1.安装及配置默认路径 Windows中从GitHub上面:https://git-for-windows.github.io/ 下载安装好git后(双击,改一下需要的安装路径,一路确定就好了),安装 ...
- git与github安装、配置、pull、push
操作系统是Ubuntu 16.04 LTS 64bit 1 安装git (1)安装 sudo apt-get install git-core (2)一些全局变量的初始化 在本地建立一个文件夹,然后做 ...
随机推荐
- CSP-S 模拟测试 45 题解
由于咕掉的题解太多了,所以只能趁改完不动题的时间,来补补坑qwq,还是太弱了. 考试过程: 到新机房的第一次考试,貌似海星? 第一题一开始就觉得是个贪心,但以为所有小怪兽都要打完,所以想复杂了,但后来 ...
- redis基本介绍
1.Redis 简介 Redis 是完全开源免费的,遵守BSD协议,是一个高性能(NOSQL)的key-value数据库,Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化 ...
- 用python来抓取“煎蛋网”上面的美女图片,尺度很大哦!哈哈
所用Python环境为:python 3.3.2 用到的库为:urllib.request re 废话不多说,先上代码: import urllib.request import re #获 ...
- Hadoop元数据备份与恢复方案
Hadoop元数据备份与恢复方案 标签(空格分隔): Hadoop Namenode 备份策略: 周期性备份namenode.standby namenode的dfs.namenode.name.di ...
- dcokee 安装 nginx
1,docker pull openresty/openresty 2, mkdir /opt/local/openresty 等等文件夹 3, docker run --name=" ...
- 【分类模型评判指标 二】ROC曲线与AUC面积
转自:https://blog.csdn.net/Orange_Spotty_Cat/article/details/80499031 略有改动,仅供个人学习使用 简介 ROC曲线与AUC面积均是用来 ...
- 0ctf-ezdoor-复现分析
在学习opcache的时候,看到了这个题目,刚好有环境,就来复现一下,这个题目也让我学到了很多. 创建镜像: docker build -t 0ctf-ezdoor . 启动容器: docker ru ...
- 爬虫实践——数据存储到Excel中
在进行爬虫实践时,我已经爬取到了我需要的信息,那么最后一个问题就是如何把我所爬到的数据存储到Excel中去,这是我没有学习过的知识. 如何解决这个问题,我选择先百度查找如何解决这个问题. 百度查到的方 ...
- springboot项目的maven的pom.xml文件第一行报错 Unknown Error
springboot项目的maven的pom.xml文件第一行报错 Unknown Error https://blog.csdn.net/mini_jike/article/details/9239 ...
- PHP学习之验证码类
<?php $code = new Code(); $code->outImage(); class Code { //验证码个数 protected $number; //验证码类型 p ...