1.git init (初始化本地仓库)


2.git status (查看更改状态)


3.git add . (添加到本地仓库)


3.git commit -m "xxx" (提交到本地仓库)


5.git clone 远程地址 (拉取远程代码)


*git remote add origin git@XX.XX.XX.12:gyjia/hotcodeserver.git  为远程仓库取别名,以后提交代码每次都输入远程仓库地址


6.git push (推送本地代码到远程)


------------------------------------------------7.分支管理---------------------------------------------------------


7.git branch -a (查看所有分支)


7-1.git branch hello_git_branch (新建本地分支)

7-2.git branch -d test (删除本地分支)


7-3.git checkout origin/test -b test1    (检出远程分支到本地,起一个别名test1)


7-4.git branch -m test1 test            (将本地test1分支命名为test)

7-5.git push origin hello_git_branch    (提交本当前地分支的代码到远程仓库,使用别名)

7-5-1.git push origin hello_git_branch:master (提交本地hello_git_branch分支的代码到远程仓库指定分支master上)

7-6.git pull origin hello_git_branch:master (远程仓库的master与本地的hello_git_branch分支合并)


7-7.git clone -b 分支名  地址 (克隆指定分支)

---------------------------------------------------------------------------------------------------------------------



8.git fetch (取回所有分支的更新)


8.git pull (拉取远程建立的分支到本地,*请先在远程建立分支,更新最新的代码)


9.git checkout xxx(需要切换的分支名称) (切换分支)


10.合并分支:

1.先提交分支上的: git push

2.切换到主分支: git checkout master

3.合并操作: git merge origin/需要合并的分支名称

4.将master分支内容提交到线上: git push 


11.解决冲突的三大指令:

1.git stash ( 备份当前的工作区的内容,从最近的一次提交中读取相关内容,让工作区保证和上次提交的内容一致。同时,将当前的工作区内容保存到Git栈中。)

        2.git pull

3.git stash pop (从Git栈中读取最近一次保存的内容,恢复工作区的相关内容。由于可能存在多个Stash的内容,所以用栈来管理,pop会从最近的一个stash中读取内容并恢复。)

4.解决冲突

5.push提交

备注:git stash list: 显示Git栈内的所有备份,可以利用这个列表来决定从那个地方恢复。

git stash clear: 清空Git栈。此时使用gitg等图形化工具会发现,原来stash的哪些节点都消失了。


12.git本地回滚:

1.git reflog (查看提交日志)

2.git reset --hard xxx(日志hash码)


13.切换远程地址

1.git remote -v 查看当前项目的远程路径


2.git remote set-url origin http://xxxxx.git 切换远程地址


--------------------------------------------------------------------------------------------------------------------


1.新建一个临时 tem 分支,把当前提交的代码放到整个分支

git branch tem

git checkout tem


2.换回要回到的那个分支,这里是 master

git checkout master


3.然后 merge 刚才创建的临时分支

git merge tem


4.忽略文件提交

git rm -r --cached */src/test/java/ 清除忽略文件缓存


git update-index --assume-unchanged */src/test/java/ 设置不检查文件(一次性)


git rm -r --cached .

git add .

git commit -m ‘update.gitignore’


对比2个文件,不同处生成文件

git diff a.txt b.txt > ab.diff


对比2个分支,导出修改文件(查看分支提交日志 git log)

git diff --name-only 1bf3beff8a7fa80db653c5f572fbfbba4b85a2c2 751e9c6d5cab9cb64acb17374d7acac251eae498 | xargs tar -cvf diff_343443.tar.gz