svn与git原理的区别
svn记录每一次版本的变动
git将每个版本独立保存,有益于分支管理
同时同样复制大量分支和文件,git比svn快60倍
配置git
git config --global user.name "username"
git config --global user.email "email"
git config --list如果看到username、email说明安装成功
git工作流程:
1、在工作目录添加、修改文件
2、将需要进行版本管理的文件放入暂存区域
3、将暂存区域的文件提交到git仓库
[实际操作]
1、第一步
新建一个文件夹MyProject
切换到此目录下,在cmd模式输入git init,用来初始化git
创建project_v1.md
2、第二步
git add project_v1.md #提交至暂存区域
git checkout -- project_v1.md #将暂存区域文件对工作区域文件进行覆盖
3、第三步
git commit -m "add project_v1" #提交至git仓库
git reset HEAD #将git仓库文件对暂存区域文件进行覆盖
查看状态
git status
untreacked files 尚无放入暂存区域
nothing to commit 已将全部文件放入git仓库
git add project_v1.md #将暂存区域的文件进行覆盖,如不进行此操作,git同时保存两个文件
git log #可以查看git提交记录(里面会显示用SHA1加密过的唯一标识)
reset命令
git reset HEAD~ #(默认使用mixed模式) ~10回滚到上10个版本
git reset --mixed HEAD~ #(1、指向上一个快照2、将之前快照回滚到暂存区域)
git reset --soft HEAD~ #(1、指向上一个快照)
git reset --hard HEAD~ #(1、指向上一个快照2、将之前快照回滚到暂存区域3、将暂存区域目录还原到工作目录)
git reset #版本快照(至少SHA1码五位以上)
git reset #版本快照 文件名/路径
diff命令
git diff #工作目录VS暂存区域
git diff HEAD #工作目录VSGit仓库
git diff 快照1ID 快照2ID #比较两个历史快照
git diff 快照ID #工作目录VSGit仓库
git diff --cached 快照ID #暂存区域VSGit仓库
修改最后一次提交
git commit --amend #直接修改Git仓库
git commit --amend -m "修改的内容"
git rm 文件名 #直接删除git内文件 只是删除工作目录和暂存区域文件
git reset --soft HEAD~ #修改暂存区域的HEAD指针
git rm -f 文件名 #强制删除
git rm --cached 文件名 #删除暂存区域,保留工作目录
git mv 旧文件名 新文件名 #重命名文件
分支管理
git branch 分支名 #创建分支
git log --decorate #显示指向的分支 加上 --oneline是显示精简版
git checkout 分支名 #切换分支
git log --decorate -oneline --graph --all #精简化方式显示所有分支
git merge 分支名 #将分支合并到当前指向分支
git branch -d 分支名 #删除分支
网友评论