git版本控制
初始化git仓库
通过git init
命令把这个目录变成Git可以管理的仓库:
$ git initInitialized empty Git repository in /Users/michael/learngit/.git/
查看当前状态
通过git status
查看git中文件的状态
$ git statusOn branch masterChanges to be committed: (use "git reset HEAD <file>..." to unstage) new file: LICENSE modified: readme.txt
第一步:把文件添加到本地仓库
通过$ git add '指定文件'
命令
$ git add readme.txt
$ git add .
命令,将当前目录下的所有文件添加到本地仓库中
$ git add .
第二步,把文件提交到仓库
用命令 git commit -m "自定义版本修改信息"
$ git commit -m "wrote a readme file"[master (root-commit) eaadf4e] wrote a readme file 1 file changed, 2 insertions(+) create mode 100644 readme.txt
简单解释一下git commit命令,-m后面输入的是本次提交的说明,可以输入任意内容,当然最好是有意义的,这样你就能从历史记录里方便地找到改动记录。
版本的回退
如果你有几个版本提交到本地仓库中
版本1:wrote a readme file
Git is a version control system.Git is free software.
版本2:add distributed
Git is a distributed version control system.Git is free software.
版本3:append GPL
Git is a distributed version control system.Git is free software distributed under the GPL.
查看历史纪录
使用git log
命令查看历史
$ git logcommit 1094adb7b9b3807259d8cb349e7df1d4d6477073 (HEAD -> master)Author: Michael Liao <askxuefeng@gmail.com>Date: Fri May 18 21:06:15 2018 +0800 append GPLcommit e475afc93c209a690c39c13a46716e8fa000c366Author: Michael Liao <askxuefeng@gmail.com>Date: Fri May 18 21:03:36 2018 +0800 add distributedcommit eaadf4e385e865d25c48e7ca9c8395c3f7dfaef0Author: Michael Liao <askxuefeng@gmail.com>Date: Fri May 18 20:59:18 2018 +0800 wrote a readme file
友情提示:你看到的一大串类似1094adb...
的是commit id(版本号)
回退到上一个版本
在Git中,用 HEAD
表示当前版本,上一个版本就是 HEAD^
,上上一个版本就是 HEAD^^
,当然往上100个版本写100个^比较容易数不过来,所以写成 HEAD~100
。
git reset
命令:$ git reset --hard HEAD^HEAD is now at e475afc add distributed
git命令历史纪录
忘记commit id怎么办?没关系,Git提供了一个命令 git reflog
用来记录你的每一次命令
$ git refloge475afc HEAD@{1}: reset: moving to HEAD^1094adb (HEAD -> master) HEAD@{2}: commit: append GPLe475afc HEAD@{3}: commit: add distributedeaadf4e HEAD@{4}: commit (initial): wrote a readme file
回退到指定版本
通过命令 git reset --hard commit id
回退到commit id的版本中
$ git reset --hard 1094aHEAD is now at 83b0afe append GPL
┌────┐│HEAD│└────┘ │ │ ○ append GPL │ │ └──> ○ add distributed │ ○ wrote a readme file
改为指向 append GPL
┌────┐│HEAD│└────┘ │ └──> ○ append GPL │ ○ add distributed │ ○ wrote a readme file
远程仓库github&&码云
第1步:创建SSH Key
在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有 id_rsa
和 id_rsa.pub
这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:
$ ssh-keygen -t rsa -C "youremail@example.com"
第2步:登陆GitHub
打开“Account settings”,“SSH Keys”页面:
然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴 id_rsa.pub
文件的内容:
随时随地,进行远程推送
GitHub允许你添加多个Key。假定你有若干电脑,你一会儿在公司提交,
一会儿在家里提交,只要把每台电脑的Key都添加到G