原创

Git -01- 常用命令 + Git 远程仓库使用

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://icode.blog.csdn.net/article/details/84558404

Git -01- 常用命令 + Git 远程仓库使用

学习 Git ,推荐教程:Git教程 - 廖雪峰,原文较复杂,且示例是在 MAC 系统,本篇侧重 Windows 系统,收录常用命令及日常操作,基本使用的话,这一篇文章就够了。

准备:
安装 Git ,前往官网下载:https://git-scm.com/downloads
创建目录,用来存放项目,在终端/cmd 进入该目录

Git 常用基础命令

0.只用 git 命令,用来查看是否安装成功、及一些常用命令含义

git

1.初始化 git 版本控制系统(每个项目只执行一次)

git init

2.配置本机身份信息(–global 表示你这台机器上所有的Git仓库都会使用这个配置)

git config --global user.name "Xiao Pengwei"
git config --global user.email "xpwi@qq.com"

3.添加文件(文件名为 readme.txt,不加引号)

git add readme.txt

4.提交文件(-m 后表示说明内容,需要加引号)

git commit -m "create a readme file"

5.查看当前修改状态(常在执行 add 后,执行 commit 之前使用,也可以在 commit之后使用)

git status

6.查看修改后和上一次提交的文件的不同(different)

git diff

7.提交修改后的文件,更新文件(和最开始添加文件一样)

git add readme.txt

8.查看日志

git log

9.只查看版本号和说明内容(大型项目常用)

git log --pretty=oneline

Git 常用版本回退命令

1.Git 中关于版本的标识

在 Git 中用 HEAD 标识表示当前版本
上一个版本用: HEAD^
上上一个版本用:HEAD^^
当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100

2.回到上一个版本
MAC 版:

git reset --hard HEAD^

Windows 版:

git reset --hard "HEAD^"

3.回到上 n 个版本(最后的数字为 n 的值,以2为例):

git reset --hard HEAD~2

4.回到指定版本号版本【版本号(commit_id)不必输入完整,前几位能唯一辨认出来就可以】

使用 git log --pretty=oneline 查看版本号 + 说明内容

git reset --hard commit_id

穿梭前,用 git log 可以查看提交历史,以便确定要回退到哪个版本。
要重返未来,用 git reflog 看命令历史,以便确定要回到未来的哪个版本。

5.撤销工作区的全部修改(文件名不加引号,有空格)
【当提交后,发现有错误,想要撤销】

git checkout -- readme.txt

两种情况:
一种是 readme.txt 自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
一种是 readme.txt 已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
总之,就是让这个文件回到最近一次 git commit 或 git add 时的状态。

6.执行了 add,还没执行 commit,想要撤回,使用:
【可以把暂存区的修改撤销掉(unstage),重新放回工作区(而不是删除修改,删除修改,需要执行上面的 git checkout – readme.txt,再将工作区中修改的内容删除)】

git reset HEAD readme.txt

删除与误删解决命令

1.Linux 系统删除文件(以删除 test.txt 文件为例)

windows 中,直接在文件夹中删除

rm test.txt

删除后使用 git status 可以检测到删除了文件,此时两种情况:
2.如果确实要删除,想删除版本库中内容,执行两条命令:

git rm test.txt
git commit -m "remove test.txt"

3.如果是误删(没有执行 git rm),想要恢复,执行:

git checkout -- test.txt

4.如果是误删(且已经执行 git rm),想要恢复,执行两条命令:

git reset HEAD test.txt
git checkout -- test.txt

远程仓库

1.请自行注册一个 GitHub 账号:GitHub 官网

由于你的本地 Git 仓库和 GitHub 仓库之间的传输是通过 SSH 加密的,所以,需要一点设置:

2.创建 SSH Key。在用户主目录下【C盘---->用户/user---->Administrator(自己的用户名)】,看看有没有 .ssh 目录,如果有,再看看这个目录下有没有 id_rsa 和 id_rsa.pub 这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开 Shell(Windows下打开Git Bash),创建 SSH Key:

ssh-keygen -t rsa -C "xpwi@qq.com"

一直回车就可以,也不必要设置密码
如果一切顺利的话,可以在用户主目录里找到 .ssh 目录,
里面有 id_rsa 和 id_rsa.pub 两个文件,这两个就是 SSH Key 的秘钥对,
id_rsa 是私钥,不能泄露出去,id_rsa.pub 是公钥,可以放心地告诉任何人。

3.登陆 GitHub,打开 “Settings”,“SSH Keys” 页面,“New SSH key”,“粘贴公钥”:

为什么 GitHub 需要SSH Key呢?因为GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送。
当然,GitHub允许你添加多个Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的Key都添加到GitHub,就可以在每台电脑上往GitHub推送了。
【友情提示】:在GitHub上免费托管的Git仓库,任何人都可以看到喔(但只有你自己才能改)

你已经在本地创建了一个 Git 仓库后,又想在 GitHub 创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub 上的仓库既可以作为备份,又可以让其他人通过该仓库来协作,真是一举多得。

4.登陆 GitHub,然后,在右上角找到 “Create a new reposity” 按钮,创建一个新的仓库:
在这里插入图片描述

目前,在GitHub上的这个 learngit 仓库还是空的,GitHub 告诉我们,可以从这个仓库克隆出新的仓库,也可以把一个已有的本地仓库与之关联,下面介绍把本地仓库的内容推送到 GitHub 仓库:

5.查看你的 GitHub 仓库链接:
在这里插入图片描述
6.在 cmd 或终端执行下面命令(换成自己的地址):

git remote add origin git@github.com:xpwi/learngit.git

在这里插入图片描述
7.把本地库的所有内容推送到远程库上:

git push origin master

在这里插入图片描述

SSH 警告,输入 yes 即可

查看:
在这里插入图片描述

更多文章链接

文章最后发布于: 2018-11-26 23:19:13
展开阅读全文
0 个人打赏

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 1024 设计师: 上身试试

分享到微信朋友圈

×

扫一扫,手机浏览