Git 是 Linus Torvalds大神的作品,是一款免费、开源的分布式版本控制系统,可以敏捷高效地处理任何或小或大的项目,起初专门为linux kernel项目管理开发的,用来替代 BitKeeper软件而采取的替代过渡方案。
一、安装
sudo yum install git
二、常用git 网站
下面几个网站都可以申请免费使用
www.github.com
www.gitee.com
www.gitlab.com
三、下载软件
普通用户最常用的用途是下载如:
git clone https://github.com/phuang/ibus
git clone git://github.com/phuang/ibus.git
断点续传参数--depth=1
git clone git://github.com/phuang/ibus.git --depth=1
四、图形化界面
各个主流git项目管理网站,申请用户,新建项目,添加目录及文件,修改文件等操作都可以在网页上实现,小的项目和测试不必使用命令行来操作,非常方便,各种配置操作均有指南,大同小异,使用哪个,可具体查阅。
五、命令行用法(下面不是大的软件协同开发其实根本用不到的)
1设置本机秘钥
ssh-keygen -t rsa -C "test@testxx.com"
2查看本机秘钥内容
cd ~/.ssh
cat id_rsa.pub
3上传公钥
将显示的内容复制github上面SSH公钥里面
4测试连接
ssh -T git@github.com
5配置本地资料
用户名配置如:
git config --global user.name "xxxx"
电子邮件配置如:
git config --global user.email "xx@xxx.com"
6查看本地配置信息
git config --list --show-origin
git config --global --list
7查看远程信息
git remote -v
8编辑文件
vi test.txt
9添加文件
初始化
git init
git add test.txt
10初次提交
git commit -m "first "
11添加
git remote add origin
12推拉
git push origin master
错误
rejected master (non-fast-forward)
git pull
git push --force origin maste
提交文件到远程
新建文件vi 01.txt
添加提交git add 01.txt
提交信息git commit -m "add 01.txt"
提交git push https://gitee.com/XXXXXX/test.git
日志git log
远程更新的数据到本地
远程到本地例子
查看远程仓库git remote -v
从远程到本地git fetch origin master
比较本地与远程git log -p master.. origin/master
合并远程到本地git merge origin/master
远程到本地tempgit fetch origin master:tmp
比较临时与本地git diff tmp
临时与本地合并git merge tmp
删除临时git branch -d temp
#切换版本
git checkout release/12.x
#更新子模块下载地址及版本
vi .submodules
git submodule sync
git submodule update --init --recursive
#会退
git tag
git show XXXXXXx
git reset --hard XXXXXXXx
获取当hash
git rev-parse HEAD
git rev-parse --short HEA
git log
git log --author="xxx" --reverse
GnuTLS recv error (-110): The TLS connection was non-properly terminated
sudo apt-get install gnutls-bin
git config --global http.sslVerify false
git config --global http.postBuffer 1048576000
git config --global --unset http.https://github.com.proxy
同步master到分支
git branch -a
git checkout temp
git merge master
git add .
git commit -m "master temp 同步"
git push