git初始化简单设置

git config --global user.name "gaochaowie"
git config --global user.email "gaochaoweino@qq.com"
 
git init
git add readme.txt
git commit -m "wrote a readme file"
 
git status
git diff readme.txt 
 
git log
git log --pretty=oneline
git reset --hard HEAD^
 
git reflog
git checkout -- readme.txt
git rm test.txt
git checkout -- test.txt
 
        
 
ssh-keygen -t rsa -C "youremail@example.com"
git remote add origin git@git.coding.net:gaochaowei/6800.git
git push -u origin master
 git push -u -f origin master
 git push origin master
 
git clone git@github.com:michaelliao/gitskills.git
 
 
创建分支
git checkout -b dev //-b参数表示创建并切换
git branch //命令查看当前分支
$ git add readme.txt 
$ git commit -m "branch test"
 
git merge dev  //把dev分支的工作成果合并到master分支
git log --graph命令可以看到分支合并图。
 
,Git还提供了一个stash功能,可以把当前工作现场“储藏”起来,等以后恢复现场后继续工作:
git stash
 
git merge --no-ff -m "merged bug fix 101" issue-101
工作区是干净的,刚才的工作现场存到哪去了?用git stash list命令
 
一是用git stash apply恢复,但是恢复后,stash内容并不删除,你需要用git stash drop来删除;
 
另一种方式是用git stash pop,恢复的同时把stash内容也删了
 git stash list
 git stash apply stash@{0}
 
 删除分支git branch -D feature-vulcan
 
  git log --graph --pretty=oneline --abbrev-commit
git rebase
 
标签:git tag v1.0
git tag v0.9 f52c633
git tag -a v0.1 -m "version 0.1 released" 1094adb
git show v0.1
git tag -d v0.1
git push origin v1.0
git push origin --tags
 
 git tag -d v0.9

 windows版git修改配置

文件名过长问题:

git config --global core.longpaths true

CRLF问题

git config --global core.autocrlf false
搭建git服务器
1,sudo adduser git    新建用户
2,创建git证书登录
    收集所要登录的用户公钥,就是id_rsa.pub文件,把所有公钥导入到/home/git/.ssh/authorized_keys中,一行一个。
3,初始化git仓库,
    先选定一个目录作为git仓库,假定是/srv/sample.git,在/srv目录中输入以下命令:
    sudo git init --bare sample.git
    将owner改为git
    sudo chown -R git:git sample.git
4,可以禁用git  ssh登录:
    编辑/etc/passwd文件,将:
    git:x:1001:1001:,,,:/home/git:/bin/bash
    改为
    git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell

 git子模块处理

你必须运行两个命令:git submodule init来初始化你的本地配置文件,git submodule update来从那个项目拉取所有数据并检出你上层项目里所列的合适的提交

 
 
 git remote add origin git@gitee.com:liaoxuefeng/learngit.git
 git remote -v
 git remote rm origin
 git remote add origin git@git.coding.net:gaochaowei/6800.git
git remote rm origin
git remote add coding git@git.coding.net:gaochaowei/6800.git
git remote add gitee git@gitee.com:gaochaoweino/snlink.git
git push github master
原文地址:https://www.cnblogs.com/gaochaoweino/p/10037212.html