Git学习(廖雪峰的Git教程)笔记

来源:互联网 发布:日系rpg手游 知乎 编辑:程序博客网 时间:2024/05/07 17:14

1.Git是什么?

一直在自己电脑里就一个文件的反复修改,添加。好长时间的精力都在里面,突然有一天手残写坏了,而且Ctrl+Z不再能当做后悔药来用。一个词形容:欲哭无泪。

突然有一天发现了Git,可以作为万能的后悔药来用,只要简单的记录当天干了些什么,妈妈再也不用担心我手残了。

不但能帮我记录文件的改动,还可以与他人协作编辑,不用再拿qq发来发去,U盘插来插去,桌面一堆文件,转眼找不到想要的文件是A,是B,还是C的日子一去不复返了。

2.Git是分布式版本控制系统,那集中式控制系统又是什么?

集中式控制顾名思义,就是将所有信息都集中到中央服务器,需要的时候只能从中央服务器取出来,而且必须联网。

分布式相当于每个人都有完整的因为Git是分布式版本控制系统,所以,如果想将自己的改动分享给别人,直接推送即可,因为每个人都有完整信息,所以不需要联网,也不用担心中央服务器的问题。

3.Git安装

Windows

https://git-for-windows.github.io默认安装,安装成功后双击Git Bash启动即可。

Ubuntu

sudo apt-get install git

安装完成后,在命令行 输入

$ git config --global user.name "Your Name"$ git config --global user.email "email@example.com"
注意git config命令的--global参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。

4.创建版本库

版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。

cd 将要存放的目录mkdir 版本库名cd 创建好的版本库名
git init
init 把这个目录变成Git可以管理的仓库,此时当前目录下多了一个.git的目录,这个目录是Git来跟踪管理版本库的。
5.

git add <file> 添加文件git commit -m "****"提交到仓库
6.

git status 掌握仓库当前状态
git diff 查看具体修改的内容

7.
git log可以查看提交历史,以便确定要回退到哪个版本git reflog查看命令历史,以便确定要回到未来的哪个版本git reset --hard commit_id允许我们在版本的历史之间穿梭git reset --hard HEAD^回退到上一个版本,HEAD~100表示第前一百个版本

8.版本库

9.

git checkout -- file改乱了工作区某个文件的内容,想直接丢弃工作区的修改git reset HEAD file不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,然后再checkout
10.

git rm test.txt用于删除一个文件。如果一个文件已经被提交到版本库,那么你永远不用担心误删,但是要小心,你只能恢复文件到最新版本,你会丢失最近一次提交后你修改的内容git checkout -- test.txt其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”

11.远程仓库

在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件

ssh-keygen -t rsa -C "youremail@example.com"
如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥。

登陆GitHub,打开“Account settings”,“SSH Keys”页面,然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容,点“Add Key”,你就应该看到已经添加的Key。


12.添加远程仓库

登陆GitHub,然后找到“Create a new repo”按钮,创建一个新的仓库,在Repository name填入learngit,其他保持默认设置,点击“Create repository”按钮,就成功地创建了一个新的Git仓库。

git remote add origin git@github.com:michaelliao/learngit.git
从现在起,只要本地作了提交,就可以通过命令

git push origin master
第一次使用Git的clone或者push命令连接GitHub时,会得到一个警告,输入yes

The authenticity of host 'github.com (xx.xx.xx.xx)' can't be established.RSA key fingerprint is xx.xx.xx.xx.xx.Are you sure you want to continue connecting (yes/no)?

13.克隆

git clone git@github.com:michaelliao/gitskills.git




0 0
原创粉丝点击