==== git简介 ==== ---- ==== 基础设置 ==== 配置用户名,邮箱 [user] email = luxfang@1v.cn name = fangqiang 这个配置可以写在 ~/.gitconfig中或者.git/config中 查看设置 git config --list ---- ==== git 帮助 ==== git (列出所有命令) git command -xyz (每个命令的用法,给出一个错误的参数时git会自动提示正确的语法格式) ---- ==== 忽略某些文件 ==== 在工作区中创建一个.gitignore文件。要忽略的文件写入.gitignore即可。 ---- ==== 更新提交 ==== 修改提交信息 git commit --amend 提交之前漏了一些操作(如:一个文件忘了修改) echo "add more" >> file git add file git commit --amend ---- ==== 撤销修改 ==== git add 之前 git checkout HEAD filename(还可以检出任意版本的某个文件) git add 之后 commit之前 git reset HEAD filename git commit之后 (回到上一次提交的状态,不保留上一次提交到现在做的修改) git reset --hard HEAD^ git commit之后 (回到上一次提交的状态,保留上一次提交到现在做的修改) git reset --soft HEAD^ ---- ==== 删除文件 ==== 从暂存区中删除,工作区中文件不删除 git rm --cache filename 从暂存区中删除,工作区中文件也删除 git rm filename ---- ==== git fetch ==== 将所远程仓库中所有分支下载到本地 git fetch origin 检出分支 git checkout -b master origin/master 如果本地的分支名与远程分支名相同,可省略为如下写法 git checkout master ---- ==== git pull ==== git pull origin 将远程仓库中所有分支下载到本地,并自动为当前分支做merge操作 (如果有分支bra1和bra2。而当前分支是bra1,则git pull相当于git fetch之后自动为你执行git merge origin/bra1) git fetch 和git pull不同的就是,git fetch不会自动将你的当前分支合并 ---- ==== 分支操作 ==== 添加分支 git branch branch_name 删除分支 git branch -d branch _name 分支重命名 git branch -m old_branch new_branch ---- ==== merge,rebase ==== 初始状态 {{:images:fq-git-base.png|}} git merge bra1之后 {{:images:fq-git-merge.png|}} git rebase bra1之后 {{:images:fq-git-rebase.png|}} ---- ==== 查看命令 ==== git status 查看状态 git log 查看日志 git branch 查看分支 git remote 查看远程仓库 git show HEAD^:filename 查看其他其他版本的某个文件 : ---- ==== 其他 ==== 移动文件 git mv filename1 filename2 添加远程分支 git remote add bra_namr url 推送到特定分支 git push origin local_branch:reomte_branch 创建标签 git tag tag_name 在克隆仓库时,Git 通常会自动创建一个名为 master 的分支来跟踪 origin/master