git系列2之简单命令(乱码问题|修改文件提交|忽略文件)

1.在git项目中添加文件

git文件状态.png

查看文件状态,git status,发现乱码,则可以输入  

git config --global core.quotepath false进行解决,最后输入

git add git文件状态.png

git commit -m "添加git状态文件"

则图片也放入项目管理中

2.此时我们对README.CD文件做修改,

然后我们查看文件状态   git  status,可以看到文件目前状态是modified,下一步状态就是staged

 

通过git add README.CD,命令可以把文件放入放入暂缓区,此时可以查看文件状态git status

再通过  git commit -m "commit README.CD first change ",再查看文件状态 git status

加入我们把文件放入暂缓区时(即我们输入了git add 命令,但是没有commit),这时候我们又对文件进行了修改,则输入git status,则可以看到项目管理中,文件有两个状态,

我们这是通过 git status查看文件状态,则可以看到如下画面,此时我们提交,则提交的是放入暂存区的那一次修改的内容,当然这个时候我们也可以再一次 git add,此时文件就之后一个状态staged(放入暂存区,等待commit)

 

3.项目中有一些文件是不需要进行管理的,比如java项目中的只要src目录,还有一些配置文件,其余的是可以不要的,此时我们可以让git管理,识别哪些文件是不需要管理的

在项目中添加文件 (可以手动添加,也可以用命令 vim .gitignore),我们在文件中输入  *.[oa](忽略以o或者a结尾的文件),然后把.gitignore提交到项目管理中

.gitignore

此时我们在项目中创建文件   test.o  ,test.txt,再输入git status,发现,项目提示文件状态只提示说test.text,次文件还没有放入项目管理中

文件 .gitignore 的格式规范如下:

  • 所有空行或者以注释符号 # 开头的行都会被 Git 忽略。
  • 可以使用标准的 glob 模式匹配。
  • 匹配模式最后跟反斜杠(/)说明要忽略的是目录。
  • 要忽略指定模式以外的文件或目录,可以在模式前加上惊叹号(!)取反。

所谓的 glob 模式是指 shell 所使用的简化了的正则表达式。星号(*)匹配零个或多个任意字符;[abc] 匹配任何一个列在方括号中的字符(这个例子要么匹配一个 a,要么匹配一个 b,要么匹配一个 c);问号(?)只匹配一个任意字符;如果在方括号中使用短划线分隔两个字符,表示所有在这两个字符范围内的都可以匹配(比如 [0-9] 表示匹配所有 0 到 9 的数字)。

# 此为注释 – 将被 Git 忽略
*.a       # 忽略所有 .a 结尾的文件
!lib.a    # 但 lib.a 除外
/TODO     # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
build/    # 忽略 build/ 目录下的所有文件
doc/*.txt # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
原文地址:https://www.cnblogs.com/youlangta/p/7520073.html