<commit_before>﻿我的常用
git init        创建一个空的Git库。在当前目录中产生一个.git 
git add dir1  （添加dir1这个目录，目录下的所有文件都被加入 ） 
git add f1 f2 （ 添加f1，f2文件） 
git add .      ( 添加当前目录下的所有文件和子目录 ) 
git commit -m "Initial commit of gittutor reposistory"。 提交
git status     查看版本库的状态
git log        查看历史日志
git diff       比较工作目录和Index中的代码
git branch     列出本地git库中的所有分支
git checkout local_branch 切换到某个已经建立的本地分支local_branch
git checkout –b 新分支名
git tag V3 5b888 //以后可以用V3来代替复杂的名称(5b888…)
git show exp  //显示分支信息
git  clone  git://github.com/someone/some_project.git   some_project 
              //将'git://github.com/someone/some_project. git'这个URL地址的远程版本库，完全克隆到本地some_project目录下
git push https://git.oschina.net/zruibin/me.git 将本地commit的代码更新到远程版本库中

git fetch origin master:temp 这句命令的意思是：从远程的origin仓库的master分支下载到本地并新建一个分支temp
git diff temp 比较master分支和temp分支的不同
git merge temp 合并temp分支到master分支
git branch -d temp 如果该分支没有合并到主分支会报错，可以用以下命令强制删除git branch -D <分支名>

git中，每次提交修改文件之前要add，然后再commit。git的add命令和许多版本控制系统不一样，不是增加新增的文件，而是以内容为单位，将最新修改的内容，添加到一个临时的索引中，等待commit。
    实践发现，如果修改一个文件，然后diff查看修改，然后add，然后再修改，然后在commit



1. Git概念 
1.1. Git库中由三部分组成 
       Git 仓库就是那个.git 目录，其中存放的是我们所提交的文档索引内容，Git 可基于文档索引内容对其所管理的文档进行内容追踪，从而实现文档的版本控制。.git目录位于工作目录内。 
1） 工作目录：用户本地的目录； <commit_msg>添加常用add命令的详细使用<commit_after>﻿我的常用
git init        创建一个空的Git库。在当前目录中产生一个.git 
git add dir1  （添加dir1这个目录，目录下的所有文件都被加入 ） 
git add f1 f2 （ 添加f1，f2文件） 
git add .      ( 添加当前目录下的所有文件和子目录 ) 
git commit -m "Initial commit of gittutor reposistory"。 提交
git status     查看版本库的状态
git log        查看历史日志
git diff       比较工作目录和Index中的代码
git branch     列出本地git库中的所有分支
git checkout local_branch 切换到某个已经建立的本地分支local_branch
git checkout –b 新分支名
git tag V3 5b888 //以后可以用V3来代替复杂的名称(5b888…)
git show exp  //显示分支信息
git  clone  git://github.com/someone/some_project.git   some_project 
              //将'git://github.com/someone/some_project. git'这个URL地址的远程版本库，完全克隆到本地some_project目录下
git push https://git.oschina.net/zruibin/me.git 将本地commit的代码更新到远程版本库中

git fetch origin master:temp 这句命令的意思是：从远程的origin仓库的master分支下载到本地并新建一个分支temp
git diff temp 比较master分支和temp分支的不同
git merge temp 合并temp分支到master分支
git branch -d temp 如果该分支没有合并到主分支会报错，可以用以下命令强制删除git branch -D <分支名>

git中，每次提交修改文件之前要add，然后再commit。git的add命令和许多版本控制系统不一样，不是增加新增的文件，而是以内容为单位，将最新修改的内容，添加到一个临时的索引中，等待commit。实践发现，如果修改一个文件，然后diff查看修改，然后add，然后再修改，然后在commit

git add -u 表示 add to index only files modified or deleted and not those created 
git add -u [<path>]: 把<path>中所有tracked文件中被修改过或已删除文件的信息添加到索引库。它不会处理untracted的文件。省略<path>表示.,即当前目录。

git add -A: [<path>]表示把<path>中所有tracked文件中被修改过或已删除文件和所有untracted的文件信息添加到索引库。省略<path>表示.,即当前目录。
git add -i我们可以通过git add -i [<path>]命令查看<path>中被所有修改过或已删除文件但没有提交的文件，并通过其revert子命令可以查看<path>中所有untracted的文件，同时进入一个子命令系统

git remote -v 这个命令可以显示对应项目的远程克隆地址。



1. Git概念 
1.1. Git库中由三部分组成 
       Git 仓库就是那个.git 目录，其中存放的是我们所提交的文档索引内容，Git 可基于文档索引内容对其所管理的文档进行内容追踪，从而实现文档的版本控制。.git目录位于工作目录内。 
1） 工作目录：用户本地的目录； 
{'fraction_non_alphanumeric': 0.07560137457044673, 'fraction_numerical': 0.013745704467353952, 'mean_word_length': 5.1804670912951165, 'pattern_counts': {'":': 0, '<': 14, '<?xml version=': 0, '>': 14, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6458255', 'n_tokens_mistral': 1794, 'n_tokens_neox': 1944, 'n_words': 228}