本地仓库
mkdir learngit 创建目录
cd learngit 进入目录
pwd 显示当前目录
/c/Users/Mr.Q/learngit
git init
Initialized empty Git repository in C:/Users/Mr.Q/learngit/.git/
在C:/Users/Mr.Q/learngit/.git/中初始化空Git存储库
会发现当前目录下多了一个.git的目录,这个目录是Git来跟踪管理版本库的,不要乱动。
- · Initialized 初始化的 /ɪ'nɪʃəlaɪz/
- · Empty 空的 /ˈemptɪ/
- · Repository 仓库 /rɪ'pɒzɪt(ə)rɪ/
touch readme.txt 创建文件
start readme.txt 打开文件,现在可以修改内容了
输入
Git is a version control system. Git是一个版本控制系统。
Git is free software.Git是自由软件。
- · version 版本 /'vɜːʃ(ə)n/
第一步
git add readme.txt 告诉Git,把文件添加到仓库
第二步
git commit -m”wrote a readme file” -m后面输入的是本次提交的说明
[master ea3a4ea] 新建html文件
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 readme.txt
- · root 根 /ruːt/
- · commit 犯罪;提交;委托; /kə'mɪt/
- · readme 自述文件/'ridmi/
- · insertion 插入 /ɪn'sɜːʃ(ə)n/
- · deletion 删除 /dɪ'liːʃən/
commit 可以一次提交多个文件,所以你可以多次add不同的文件如:
$ git add file1.txt
$ git add file2.txt file3.txt
$ git commit -m "add 3 files."
继续修改 readme.txt
Git is a distributed version control system.
Git is free software.
- · distributed 分布式的 /dɪ'strɪbjʊtɪd/
可以运行git status 命令查看结果:
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: readme.txt
no changes added to commit (use "git add" and/or "git commit -a")
- · status 地位;情形;状态 /'steɪtəs/
- · branch 分支 /brɑːn(t)ʃ/
- · changes 变化 /tʃendʒz/
- · staged 分期的 /'stedʒɪd/
- · update 更新 /ʌp'deɪt
- · checkout 检验 /'tʃekaʊt/
- · discard 抛弃 /dɪ'skɑːd/
- · directory 目录 /dɪ'rekt(ə)rɪ; daɪ-/
- · modified 改进的 /ˈmɒdɪfaɪd/
上面的命令输出告诉我们,readme.txt被修改过了,但还没有准备提交。
可以用 git diff 这个命令查看具体修改了的内容
diff --git a/readme.txt b/readme.txt
index 00b29f3..9247db6 100644
--- a/readme.txt
+++ b/readme.txt
@@ -1,2 +1,2 @@
-Git is a version control system.
-Git is free software.
+Git is a distributed version control system.
+Git is free software.
知道对readme.txt作了什么修改之后,就可以放心进行提交了
用命令 git status -sb 可以更直观简洁的看到仓库的状态,-s的意思是显示总结(summary),-b的意思是显示分支(branch)
如果是??表示 git 一脸懵逼,不知道你要怎么对待这些变动如果是AA,A 的意思就是添加,也就是说你告诉 git,这些文件我要加到仓库里,如果什么都没有代表文件的变动已经记录在仓库里了。
- · Summary 总结;简易的; /'sʌm(ə)rɪ/
在Git中 git log 命令可以告诉我们历史记录。
加上参数 –pretty=oneline 可以简化历史记录的显示方式
git log –pretty=oneline
回到上一个版本:
在Git中用HEAD表示当前版本,在上一个版本就是HEAD^,上上个版本就是HEAD^^,要是往上100个可以写成HEAD~100。
使用 git reset 命令:
git reset –hard HEAD^
HEAD is now at 365d07a wrote a readme file
使用 cat readme.txt 可以查看当前文件内容,可以发现已经回到上一个版本
再次使用 git log 可以看到最新的记录“append GPL”已经没有了,但有办法找回来,只要上面的命令行窗口还没有被关掉,就可以找到 “append GPL”的commit id 也就是版本号多是少 比如是7b0f1365a469ac5dec49457d49b3c1bcc9f0643a
那么就可以 git reset –hard 7b0f1,版本号没必要写全,Git会自动去找。
要是关闭了电脑,第二天想恢复到新版本怎么办呢?
git reflog 可以查看你的每一次命令
删除文件:
1先用 rm 命令删除文件
2然后用 git rm 告诉Git要删掉版本库里的文件
3 然后 git commit 确定删除请求
将本地仓库上传到GithHub
GitHub允许你添加多个Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的Key都添加到GitHub,就可以在每台电脑上往GitHub推送了。
1在GitHub上创建一个空仓库,名称随意
2在我们已经有了本地仓库的情况下,

把这些一行一行复制到Git Bash,就OK了。
直接在GitHub创建仓库,然后下载到本地
1.在GitBash上创建一个仓库

2.点击绿色按钮clone or download,复制SSH地址。
3.在GitBash里找到一个安全目录,然后 git clong 你刚才得到的一git@github.com开头的地址
如何上传更新
1.git add 文件
2.git commit -m””
3.git pull
4.git push
使用GitHub pages预览HTML
1.选择仓库里的html文件,点击settings
2.在GitHub Pages中选中master branch

得到一个预览链接,例如https://xu-kai-quan.github.io/git-demo-1/
3.把网址后面变成https://xu-kai-quan.github.io/git-demo-1/y1.html
4.如果不显示,等个3分钟,在刷新
在GitHub里删除一个仓库
打开要删除的仓库,选择Settings,在页面的最下面有个Delete this repository 按钮,点击它,然后输入仓库名字就ok了.
GitHub文件上有个白色箭头并且不能打开,解决方式:
git rm -r --cached "文件夹的名称"
git commit -m "更新log"
git push
这样github上的那个白色箭头文件就被删除了,然后重新上传就行了
如果怎么都上传不了,可以直接在github上,上传。
