000 git区域的关系
几个专用名词的译名如下。
- Workspace:工作区
- Index / Stage:暂存区
- Repository:仓库区(或本地仓库)
- Remote:远程仓库
上面的内容来自阮一峰的博客,这里还可以看下常用列表,自己再补充一下缺失的部分就可以成为自己的常用列表了。
001
初始化一个仓库
git init
002
避免影响全局设置,设置为本地的用户名和邮箱,非全局–global
git config --local user.name gitppp
git config --local user.email 26huitailang@gmail.com
003
添加README到stage区
git add README
004
提交README,进入vim界面,点i输入内容,:wq保存并退出
git commit README
005
克隆到本地
git clone https://github.com/Gazler/cloneme
006
克隆到my_cloned_repo文件夹下
git clone https://github.com/Gazler/cloneme my_cloned_repo
007
在.gitignore下输入,忽略所有的后缀为.swp的文件
*.swp
008
查看gitignore的帮助,html页面,忽略所有后缀.a的文件除了lib.a
git gitignore --help
.gitignore文件内容
*.a
!lib.a
009
查看stage状态,绿色为等待提交commit,红色为untracked,git rm –cached可以将待提交的文件变为unstage
git status
010
有多少个文件将要被提交
git status
011
一个文件在working tree中已经删除,但是repository中没有,请删除
git add deleteme.rb
git commit -m "delete"
012
一个文件在working tree中已经删除,但是repository中没有,请删除
git add deleteme.rb
git commit -m "delete"
013
修改了文件,想下次继续修改,保存但是不commit,加list可以查看进度列表,恢复使用git stash apply,支持多次提交,git用栈维护,WIP意思是work in progress。
git stash
git stash list
014
重命名文件,该文件已经处于staging状态,修改完后自动成为staging状态,git mv [source] [destination]。
ls
git status
git mv oldfile.txt newfile.txt
ls
git status
015
此题在powershell中执行
git mv *.html src、
会提示错误:
fatal: bad source, source=src/*.html, destination=src/src
以下改用git bash客户端运行,没有问题。
016
询问最近的提交的hash。
git log --stat
黄色行,commit后面的值为该次提交的hash值。
017
给当前commit新建一个tag
git tag new_tag