git常用命令,linus的神作之一。

1.git和svn相比有什么优势。

 GIT是分布式的,SVN不是,SVN是把所有的文件集中的放在服务端,一旦服务端宕机,就会导致有的资源丢失,而git是分布式的,每个人在本地都有自己的仓库。感觉有一点去中心化的思想。

 GIT把内容按元数据方式存储,而SVN是按文件:因为git目录是处于个人机器上的一个克隆版的版本库,它拥有中心版本库上所有的东西,例如标签,分支,版本记录等。

 GIT分支和SVN的分支不同:svn会发生分支遗漏的情况,而git可以同一个工作目录下快速的在几个分支间切换,很容易发现未被合并的分支,简单而快捷的合并这些文件。

 GIT的内容完整性要优于SVN:GIT的内容存储使用的是SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏(和比特币有点相似)。

 2.常用命令

1)本地库初始化:git init

2)设置签名:(用于识别是那个用户提交的版本,并不是登录用)

项目级别/仓库级别:仅在当前本地库范围内有效:

    git config user.name tom
    git config user.email [email protected]

系统用户级别:登录当前操作系统的用户范围:

    git config --global user.name tom

    git config --global [email protected]

3)查看状态

git status(查看工作区,暂存区状态)

4)添加

git add [file name](将工作区的“新建/修改”添加到暂存区)

5)提交

将暂存区的内容提交到本地库

git commit -m "commit message" [file name](字符串里面的是就是你提交此版本的信息)

6)查看历史记录

git log --pretty=oneline、git log --oneline、git reflog

7)前进后退

基于索引值操作[推荐]
 git reset --hard [局部索引值]
git reset --hard a6ace91

8)分支操作

创建分支
git branch [分支名]
 查看分支
git branch -v
 切换分支
 git checkout [分支名]

合并分支

第一步:切换到接受修改的分支(被合并,增加新内容)上
git checkout [被合并分支名]

第二步:执行 merge 命令
git merge [有新内容分支名]

解决冲突

 第一步:编辑文件,删除特殊符号
 第二步:把文件修改到满意的程度,保存退出
 第三步:git add [文件名]
 第四步:git commit -m "日志信息"
 注意:此时 commit 一定不能带具体文件名

9)远程仓库操作

git remote -v 查看当前所有远程地址别名
git remote add [别名] [远程地址]

推送

git push [别名] [分支名]

克隆

git origin [远程地址]

猜你喜欢

转载自www.cnblogs.com/hnwxp/p/12162138.html