1. git通常分为四个区
1. Workspace 工作区,git add将工作区的代码添加到暂存区
2. Stage 暂存区,git.status查看暂存区的状态
3. Repository 本地仓库区,git commit 提交暂存区文件到本地仓库
4. Remote 远程仓库,git push 将本地仓库代码提交到远程仓库
2. git的基础配置
1. 查看当前git的配置信息:git config -l
2. 查看当前git的全局配置:git config --global -l
3. 修改git的用户名:git config --global user.name '用户名'
4. 修改git的密码:git config --global user.password '密码'
5. 修改git的email:git config --global user.email '邮箱'
3. 本地仓库搭建
1. 在当前目录初始化git项目:git init 目录会多了一个.git文件
2. 克隆远程仓库项目到本地:git clone 远程仓库地址
4. 添加文件到暂存区或从暂存区删除文件
1. 添加指定文件或目录:git add 文件名称或目录
2. 添加当前文件夹的所有文件:git add .
3. 删除暂存区内的指定文件:git rm 文件名或目录
4. 修改文件名并添加到暂存区:git mv [oldfilename] [newfilename]
5. 提交文件到本地仓库
1. 提交暂存区内的文件到本地仓库:git commit -m "备注信息"
2. 提交工作区字上次commit后的变化,直接到本地仓库:git commit -a
3. 提交时显示所有的diff信息:git commit -v
4. 使用新的commit替代上一次的提交,如果内容没有变化,则修改描述信息:git commit --amend -m '描述信息'
6. git分支处理
1. 查看所有本地分支:git branch
2. 查看所有远程分支:git branch -r
3. 创建新的分支:git branch 分支名
4. 切换分支:git checkout 分支名
5. 切换到上一个分支:git checkout -
6. 合并指定分支到当前分支:git merge 分支名
7. 删除分支:git branch -d 分支名
8. 删除远程分支:git push origin --delete 分支名 或 git branch -dr 分支名
7. git上传至远程仓库
1. 添加远程仓库:git remote add origin 远程仓库地址
2. 将本地仓库push到远程仓库:git push -u origin "master"
3. 查看所有远程仓库:git remote -v
4. 强行推送当前分支到远程仓库,忽略冲突:git push 远程仓库 --force
5. 推送所有分支到远程仓库:git push 远程仓库 --all
8. git 撤销
1. 恢复暂存区的文件到工作区:git checkout [ filename ] 或者 git checkout .
2. 恢复某个commit的文件到暂存区和工作区:git checkout [ commit ] [ filename ]
3. 重置暂存区的文件,与上一次commit保持一致,工作区不变:git reset [ filename ]
4. 重置暂存区和工作区,与上一次commit保持一致:git reset --hard
9. git其他命令
1. 显示当前分支的版本信息:git log
2. 显示commit历史和发生变更的文件:git log --stat
3. 显示某个文件的版本历史,包括文件改名:git log --follow [ filename ]
4. 显示过去的n次提交:git log -n --pretty --oneline
5. 显示所有提交过的用户,按提交次数排序:git shortlog -sn
6. 显示对文件修改的用户和时间:git blame [filename ]
10. .gitignore文件的忽略配置规则,即在上传的时候不会被选中
1. 忽略文件中的空行或者以#开始的注释文件
2. 可以忽略Linux通配符,*代表多个字符,?代表一个字符等
如:*.txt 表示忽略以.txt结尾的文件
3. 如果前由!,表示例外规则,即不会被忽略
如:! lib.txt 表示lib.txt文件不会被忽略
4. 名称前面有一个 / ,表示根目录下的文件被忽略,其他目录下的不会被忽略
如:/temp 表示忽略根目录下的temp,不会忽略其他目录下的temp
5. 名称后面有一个 / ,表示该目录下的文件被忽略
如:temp/*.txt 表示忽略temp下的.txt文件,但是不会忽略temp/doc/hello.txt文件
标签:文件,git,--,基本知识,仓库,暂存区,commit From: https://www.cnblogs.com/chf333/p/17160590.html