Git版本库创建及管理
养浩然之气,做博学之人
创建版本库
创建项目目录
创建本地项目目录,即Git要管理的项目目录
如:D:PythonProjectsDemo
配置版本库信息
打开Git Bash,进入本地项目目录:
代码语言:javascript复制cd D:/PythonProjects/Demo
在 git 中添加用户名 user.name 和 用户 email user.email:
代码语言:javascript复制git config --global user.name "xiaowangyun"
git config --global user.email "xwy@xiaowangyun.com"
查看是否配置好:
代码语言:javascript复制git config user.name
git config user.email
输出:xiaowangyun xwy@xiaowangyun.com
创建版本库
在当前项目目录中建立 git 的管理文件
代码语言:javascript复制git init
Initialized empty Git repository in D:/PythonProjects/Demo/.git/
大家可以看到,创建了一个空版本库。
添加文件到版本库(add)
查看版本库文件:
代码语言:javascript复制ls
ls -a
注: ls 只能显示可见文件和文件夹,ls -a 可以显示所有文件和文件夹
在项目目录创建文件,test.txt
查看版本库状态:
代码语言:javascript复制git status
输出:
On branch master
No commits yet
Untracked files:
(use "git add <file>..." to include in what will be committed)
test.txt
nothing added to commit but untracked files present (use "git add" to track)
将test.txt添加到版本库:
代码语言:javascript复制git add test.txt
一次性添加文件夹中所有未被添加的文件:
代码语言:javascript复制 git add .
git status
On branch master
No commits yet
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: .idea/Demo.iml
new file: .idea/encodings.xml
new file: .idea/misc.xml
new file: .idea/modules.xml
new file: .idea/vcs.xml
new file: .idea/workspace.xml
new file: Basic/1basic.py
new file: Basic/2function.py
new file: Basic/3whilefor.py
new file: Basic/4inout.py
new file: Basic/5package.py
new file: Basic/6file.py
new file: Basic/78class.py
new file: Common/fibo.py
new file: README.md
new file: demo.py
new file: test.txt
提交修改(commit)
提交上面的修改:
代码语言:javascript复制git commit -m "创建版本库 Python Demo"
[master (root-commit) a0bcae7] 创建版本库 Python Demo
17 files changed, 1223 insertions( )
create mode 100644 Common/fibo.py
create mode 100644 README.md
create mode 100644 demo.py
create mode 100644 test.txt
。。。
注:在 git 中, 每一次提交(commit)的修改, 都会被单独的保存起来,所以称作版本管理。
查看日志
查看当前版本库什么人什么时间做了哪些修改:
代码语言:javascript复制 git log
commit a0bcae7c9bdb810e45f0708795091b9d1d29aee3 (HEAD -> master)
Author: xiaowangyun <xwy@xiaowangyun.com>
Date: Wed Nov 21 22:26:36 2018 0800
创建版本库 Python Demo
查看未提交的修改(unstaged)
只是修改了文件,没有add也没有提交,处于unstaged状态
代码语言:javascript复制git diff
diff --git a/README.md b/README.md
index 3d6b5cc..878d295 100644
--- a/README.md
b/README.md
@@ -1,5 1,7 @@
Python自学笔记
Python Demo
'小望云'
'www.xiaowangyun.com'
No newline at end of file
注: 按回车可以继续查看后面的内容
查看 staged (--cached)
修改之后add了这次修改,文件变成staged状态,可以用--cached查看修改
代码语言:javascript复制git add .
git diff --cached
输出;
diff --git a/README.md b/README.md
index 3d6b5cc..878d295 100644
--- a/README.md
b/README.md
@@ -1,5 1,7 @@
Python自学笔记
Python Demo
'小望云'
'www.xiaowangyun.com'
No newline at end of file
查看 staged & unstaged (head)
查看 add 过 (staged) 和 没 add (unstaged) 的修改:
代码语言:javascript复制git diff HEAD
输出上面两种状态的修改处。
保持这次修改, 全部 add 变成 staged 状态, 并 commit.
代码语言:javascript复制git add .
git commit -m "修改 README"
[master 66e62ec] 修改 README
3 files changed, 47 insertions( ), 15 deletions(-)