git版本控制工具,可以多分支同时进行开发再合并,可以找到任何一个以前的提交的版本进行还原与多次尝试
记录每次提交的方式:git通过快照的方式来,svn是增量的方式
Linus Torvalds(简称“李纳斯”,linux之父)创办,所以完全兼容linux,命令相同
默认用的vim编译器
Head指针指向到当前版本
$ git
usage: git [--version] [--help] [-C <path>] [-c <name>=<value>]
[--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
[-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare]
[--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
<command> [<args>]
These are common Git commands used in various situations:
start a working area (see also: git help tutorial)
clone Clone a repository into a new directory
init Create an empty Git repository or reinitialize an existing one
work on the current change (see also: git help everyday)
add Add file contents to the index
mv Move or rename a file, a directory, or a symlink
reset Reset current HEAD to the specified state
rm Remove files from the working tree and from the index
examine the history and state (see also: git help revisions)
bisect Use binary search to find the commit that introduced a bug
grep Print lines matching a pattern
log Show commit logs
show Show various types of objects
status Show the working tree status
grow, mark and tweak your common history
branch List, create, or delete branches
checkout Switch branches or restore working tree files
commit Record changes to the repository
diff Show changes between commits, commit and working tree, etc
merge Join two or more development histories together
rebase Reapply commits on top of another base tip
tag Create, list, delete or verify a tag object signed with GPG
collaborate (see also: git help workflows)
fetch Download objects and refs from another repository
pull Fetch from and integrate with another repository or a local branch
push Update remote refs along with associated objects
'git help -a' and 'git help -g' list available subcommands and some
concept guides. See 'git help <command>' or 'git help <concept>'
to read about a specific subcommand or concept.
前进后退版本:git reset
最常用的是根据索引,根据hash的前几位简写也能跳
head^^^=head~3
create a new repository on the command line
echo “# test2” >> README.md
git init
git add README.md
git commit -m “first commit”
git remote add origin https://github.com/hongzhongzhang/test2.git
git push -u origin master (-m “直接写提交信息”)
push an existing repository from the command line
git remote add origin https://github.com/hongzhongzhang/test2.git
git push -u origin master
git status
git config user.email "zzh@example.com"
git config user.name “zzh”
在你的当前库里的.git目录下的config文件中会写入用户
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[user]
email = zzh@example.com
name = zzh
git config --global user.email "ZZH@global.com"
git config --global user.name “ZZH_Global”
在你的“~”家目录下存储全局用户
这个文件长这样:
[user]
email = ZZH@global.com
name = ZZH_Global
git reflog
git log --oneline
git push https://github.com/hongzhongzhang/test.git master
git pull https://github.com/hongzhongzhang/test.git master
win10这个会记录你的登录信息,push等操作就可以不用输入信息,如果想要换必须把这里删除!!
git checkout 切换分支
git branch 查看分支
https://blog.csdn.net/qq1332479771/article/details/56087333
github上fork了别人的项目后,再同步更新别人的提交
用github网站和用git命令两种方式
github网站上操作
-
打开自己的仓库,进入code下面。
-
点击new pull request创建。
-
选择base fork
-
选择head fork
-
点击Create pull request,并填写创建信息。
-
点击Merge pull request 合并从源fork来的代码。
-
完成。
用git命令操作
先到本地仓库中打开bash编辑器
主要步骤如下:
git remote -v //用git remote查看远程主机状态
git remote add upstream git@github.com:xxx/xxx.git //添加起别名
git fetch upstream //先拉到本地库
git merge upstream/master //合并到本地库
git push //上传到远程库
目的是为了防一首冲突,所以在上传之前先拉下来合并
未完待续。。。。。。。。。。。。。。。。。。。。。。