Git 配置
配置使用git仓库的人员姓名
git config --global user.name "Your NameComes Here"
配置使用git仓库的人员email
git config --global user.email “you@yourdomain.example.com”
创建密钥
Ssh-keygen –t rsa–C “you@yourdomain.example.com”
查看配置
git config –list
GIT使用
初始化
Git init
clone现有仓库
git clone URL (URL支持git,ssh,http,https等各种协议)
追加文件
git add dir1 (添加dir1这个目录,目录下的所有文件都被加入)
Git add f1 f2 ( 添加f1,f2文件)
git add . ( 添加当前目录下的所有文件和子目录 )
删除文件
git rm –r * (进入某个目录中,执行此语句,会删除该目录下的所有文件和子目录)
git rm f1 (删除文件f1,包含本地目录和index中的此文件记录)
git rm --ached f1 (删除文件f1,不会删除本地目录文件,只删除index中的文件记录;将已经git add的文件
提交到GIT仓库
git commit –-amend –m “message”(在一个commitid上不断修改提交的内容)
查看状态
Git status
查看版本库的状态。可以得知哪些文件发生了变化,哪些文件还没有添加到git库中等等。 建议每次commit前都要通过该命令确认库状态。
查看日志
git log
查看历史日志,包含每次的版本变化。每次版本变化对应一个commitid。
git log -1
-1的意思是只显示一个commit,如果想显示5个,就-5。不指定的话,git log会从该commit一直往后显示。
Git log--stat –summary (显示每次版本的详细变化)
在项目日志信息中,每条日志的首行(就是那一串字符)为版本更新提交所进行的命名,我们可以将该命名理解为项目版本号。项
目版本号应该是唯一的,默认由 Git自动生成,用以标示项目的某一次更新。如果我们将项目版本号用作git-show 命令的参数,即
可查看该次项目版本的更新细节
合并分支
git merge
把服务器上下载下来的代码和本地代码合并。或者进行分支合并。
例如:当前在master分支上,若想将分支dev上的合并到master上,则git merge dev
注意:git merge nov/eclair_eocket(是将服务器git库的eclair_eocket分支合并到本地分支上)
git rebase nov/eclair_eocket (是将服务器git库的eclair_eocket分支映射到本地的一个临时分支上,然后将本地分支上的变化合并到
这个临时分支,然后再用这个临时分支初始化本地分支)
比较
git diff
把本地的代码和index中的代码进行比较,或者是把index中的代码和本地仓库中的代码进行比较。
1) git diff
比较工作目录和Index中的代码。
2) git diff --cached
比较index和本地仓库中的代码。
git 远程仓库
简单查看-所有仓库
git remote (只能查看远程仓库的名字)
查看更多内容-所有仓库
git remote -v (远程仓库的名字及git地址)
查看单个仓库的信息
gitremote show [remote-name]
新建远程仓库
git remote add [shortname] [url]
ex. gitremote add mcgit://www.host.com/gitdir/mycode.git
修改远程仓库
git remote rename [oldnanme] [newname]
删除远程仓库
git remote rm [remote-name]
获取数据
git fetch [remote-name] (获取仓库的所有更新,但是不自动合并当前分支)
git pull (获取仓库的所有更新,并且自动合并到当前分支)
上传数据
git push [remote-name] [branch-name]
ex. git push origin master
克隆数据
git clone -b <branch> <remote_repo>
git 标签
如果你达到一个重要的阶段,并希望永远记住那个特别的提交快照,你可以使用 git tag给它打上标签
轻量级tag
git tag [tag-name]
带标注的tag
git tag -a [tag-name] -m "tag message"
后期追加tag
git log --pretty=oneline (查看所有的commit号) git tag -a [tag-name] [commit号前几位即可]
删除标签
git tag -d [tag-name]
提交标签到远程仓库
git push [remote-name]--tags ex. git push origin--tags