Git常用命令

参考文档

初始并配置

1
2
3
4
5
git init
git config --global user.name "sww1230"
git config --global user.email sww1230@163.com

git config --list // 检查配置信息

工作流

  • Git 怎样保证fork出来的project和原project(上游项目)同步更新

    1. 在 Fork 的代码库中添加上游代码库的 remote 源,该操作只需操作一次即可。如: 其中# upstream 表示上游代码库名, 可以任意。

      1
      git remote add upstream https://github.scm.corp.ebay.com/montage/frontend-ui-workspace
    2. 将本地的修改提交 commit

    3. 在每次 Pull Request 前做如下操作,即可实现和上游版本库的同步。

      1
      2
      git remote update upstream
      git rebase upstream/{branch name}

      需要注意的是在操作3.2之前,一定要将checkout到{branch name}所指定的branch,如:

      1
      git checkout develop
    4. Push 代码到 Github

      1
      git push origin dev.161625

分支

  • 查看分支
    • git branch -a
  • 删除远程分支
    • git branch -r -d origin/
    • git push origin :
  • 删除不存在对应远程分支的本地分支
    • 查看远程分支
    • git remote show origin
      • refs/remotes/origin/b1 stale (use ‘git remote prune’ to remove)
      • git remote prune origin
    • 更简单的用法
      • git fetch -p
  • 新建分支

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    //create branch
    git checkout -b dev.170220

    //coding

    //update upstream
    git remote update upstream
    git rebase upstream/dev.170220

    //push
    git push --set-upstream origin dev.170220
====

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
创建分支: $ git branch mybranch
切换分支: $ git checkout mybranch
创建并切换分支: $ git checkout -b mybranch

更新master主线上的东西到该分支上:$git rebase master

切换到master分支:$git checkout master

更新mybranch分支上的东西到master上:$git rebase mybranch

提交:git commit -a

对最近一次commit的进行修改:git commit -a –amend

commit之后,如果想撤销最近一次提交(即退回到上一次版本)并本地保留代码:git reset HEAD^
合并分支:(merge from) $ git checkout master
$ git merge mybranch (merge from mybranch)
删除分支: $ git branch -d mybranch
强制删除分支: $ git branch -D mybranch
列出所有分支: $ git branch
查看各个分支最后一次提交: $ git branch -v

查看哪些分支合并入当前分支: $ git branch –merged

查看哪些分支未合并入当前分支: $ git branch –no-merged

更新远程库到本地: $ git fetch origin
推送分支: $ git push origin mybranch
取远程分支合并到本地: $ git merge origin/mybranch
取远程分支并分化一个新分支: $ git checkout -b mybranch origin/mybranch
删除远程分支:                 $ git push origin :mybranch

rebase: $ git checkout mybranch
$ git rebase master (rebase from master)

举例: $ git checkout server
$ git rebase –onto master server client
$ git checkout master
$ git merge client (fostforward)
$ git rebase master server (checkout sever)
$ git merge server
$ git branch -d client
$ git branch -d server

tag

  • 删除tag
    • git tag -d
    • git push origin :refs/tags/

子模块

Git Submodule管理项目子模块

安装数据库

yum install mariadb-server.x86_64

systemctl start mariadb

mysql -uroot

show databases
select user,host from mysql.user;

启动 phpmyading
systemctl restart httpd

桌面可视化编辑工具

参考文档

  • Eletron

    1
    Electron 是一款可以利用 Web技术 开发跨平台桌面应用的框架,最初是 Github 发布的 Atom 编辑器衍生出的 Atom Shell,后更名为 Electron。
  • Create React App

Electron 镜像

1
2
npm install -g cnpm --registry=https://registry.npm.taobao.org
cnpm install -g electron

Electron 示例

1
2
3
4
git clone https://github.com/electron/electron-quick-start
cd electron-quick-start
npm install
npm start

Create React App

1
2
3
npx create-react-app my-app
cd my-app
npm start

Electron 知识点

1
2
3
4
//返回一个隐藏标题栏的全尺寸内容窗口
mainWindow = new BrowserWindow({width: 750, height: 500, titleBarStyle: 'hidden'})
//可拖拽窗口区域css设置
style="-webkit-app-region: drag"
1
2
默认打开浏览器
openBrowser(urls.localUrlForBrowser);

commander

  • 一个帮助快速开发Nodejs命令行工具的package

respawn

electron进程与进程之间的通信

child_process

在node中,child_process这个模块非常重要。掌握了它,等于在node的世界开启了一扇新的大门。熟悉shell脚本的同学,可以用它来完成很多有意思的事情,比如文件压缩、增量部署等,感兴趣的同学,看文本文后可以尝试下。

  • 创建进程

    下面列出来的都是异步创建子进程的方式,每一种方式都有对应的同步版本。
    .exec()、.execFile()、.fork()底层都是通过.spawn()实现的。
    .exec()、execFile()额外提供了回调,当子进程停止的时候执行。