因为工作git是使用工具只一,所以列个帖子记录工作中用到的git的语法。
1. 克隆仓库(http地址和ssh方式)
git clone 地址
2. 拉取库更新
git pull
3. 上传本地数据到库
git add 文件路劲:git add /home/test/a.txt
也可以使用git add --all 添加所有改动所有文件
4. 对此次提交进行一个说明
git commit -s
5. 产生本地的ssh密钥
git config --global user.name"your name"
git config --global user.email"your email"
ssh-keygen -t rsa -C "you counter"
6.生产patch
git format-patch -n commit-id // n是一个数值,commit-id 就是选择想要生产那个提交的patch,n的数值就是生产从该commit id到之后的n个patch,比如 根据时间从早到晚提交历史:1 -> 2 -> 3 -> 4->5, 1是我最早提交的,5是最后面提交的,如果git format-patch -3 2,那么我会生产3个patch,分别是 2 3 4这三个commit id的patch。
git format-patch HEAD^ //生产最新一次提交的patch,如上例则生产5的patch,多加一个^,就多生产一个,例如HEAD^^ 则生产 5 4两个,以此列推。
7. git init
在当前目录初始化git库,一般有一下几个命令初始化一个git库:
git init
git add --all
git commit -m "init git"
8. 把一个git仓库的branch全部记录copy到例外一个git仓库
举例说明:
仓库1:tmp1.git
仓库1 路劲:/test/tmp1.git
仓库1包含branch:.
master
tmp1-test
仓库1:tmp2.git
仓库1 路劲:/test/tmp2.git
仓库1包含branch:.
master
tmp2-test
现在需要把tmp2.git的branch tmp20-test整个记录copy 到tmp1.git, 步骤如下:
修改tmp2.git 下的".git/config"配置文件,让它的remote url指向tmp1
在tmp2.git下执行命令:git push origin tmp2-test --tags
在tmp1.git下就能看到branch tmp2-test了
注意: tmp1.git仓库不能有branch tmp2-test,不然就需要merger冲出。
9. 增加一个没有tag记录的branch。
git checkout --orphan aaaa
该命令会创建一个新的branch aaa, 同时切换到aaaa branch, branch内有原来切换前的文件,但是没有tag记录。