Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。
Git 不仅仅是个版本控制系统,它也是个内容管理系统(CMS),工作管理系统等。
Git 与 SVN 区别点:
官网下载安装即可。
Git Bash:Unix与Linux风格的命令行,最推荐使用。
Git CMD:Windows风格的命令行。
Git GUI:图形界面的Git。
# 设置提交代码时的用户信息
$ git config --global user.name "[name]"
$ git config --global user.email "[email address]"
# 显示当前的Git配置
$ git config --list
# 添加当前目录的所有文件到暂存区
$ git add .
# 提交暂存区到仓库区
$ git commit -m "[message]"
git push origin master
#密钥
ssh-keygen -t rsa -C "这里换上你的邮箱"
#历史记录
history
#配置信息
git config -l
git config --global --list #用户配置
git config --system --list #系统配置
系统配置文件在:安装目录Git/etc/gitconfig
用户配置文件在:C盘,当前用户,.gitconfig
Git本地有三个工作区域,工作目录,暂存区,资源库(本地仓库),如果加上远程的git仓库,就可以分为四个工作区域。
工作目录----git add----暂存区----git commit----本地仓库----git push----远程仓库。
远程仓库----git pull----本地仓库----git reset----暂存区----git checkout----工作目录。
git init:创建全新的仓库。
git clone 地址:从远程仓库克隆到本地。
文件的四种状态:
git status:查看文件状态
忽略文件:有时候我们不想将某些文件纳入版本控制中,比如数据库文件,临时文件等。
在主目录下建立 .gitignore 文件,此文件有以下的规则:
*.txt #忽略所有的.txt结尾的文件
!lib.txt #lib.txt除外
/temp #仅忽略项目根目录下的TODO文件,不包括其它目录temp
build/ #忽略build下的所有文件
doc/*.txt #忽略 doc/notes.txt但不包括doc/server/arch.txt
注册登录码云
设置本机绑定SSH公钥,实现免密登录。(C/user/adminnistrator/.ssh)
ssh-keygen -t rsa -C "邮箱":生成公钥
将公钥信息添加到码云SSH中。
使用码云创建一个仓库。
新建项目。(将远程下载的项目拷贝到新建的项目中,拷贝的颜色变红)
修改文件,使用IDEA操作git。
提交。
Git分支中常用的命令
#列出所有的本地分支
git branch
#列出所有的远程分支
git branch -r
#新建一个分支,但依然停留在当前分支
git branch [branch-name]
#新建一个分支,并切换到该分支
git checkout -b [branch]
#合并指定分支到当前分支
git marge [branch]
#删除分支
git branch -d [branch-name]
#删除远程分支
git push origin --delete [branch-name]
git branch -dr [remote/branch]
如果同一个文件在合并分支时都被修改了则会引起冲突,解决的办法就是修改冲突文件后重新提交。选择要保留哪一个。
master主分支应该非常稳定,用来发布新版本,一般情况下不允许在上面工作。工作一般会在新建的dev分支上工作,工作完后,比如要发布,或者dev分支代码稳定后可以合并到主分支master上。
原文:https://www.cnblogs.com/zhou-zr/p/14698411.html