GithubHelp home page GithubHelp logo

hjstam / che-code Goto Github PK

View Code? Open in Web Editor NEW

This project forked from che-incubator/che-code

0.0 0.0 0.0 411.45 MB

Upstream Code OSS integration for Eclipse Che

License: Eclipse Public License 2.0

Shell 10.81% JavaScript 87.05% Ruby 0.11% C++ 0.17% Python 0.15% Perl 0.12% C 0.05% PHP 0.06% Objective-C 0.09% Java 0.04% Lua 0.02% Groovy 0.25% Clojure 0.08% R 0.02% Go 0.04% CoffeeScript 0.04% C# 0.04% F# 0.04% Rust 0.03% PowerShell 0.79%

che-code's Introduction

che-code

Deploy Code-OSS on a kubernetes cluster and connect with your Browser.

This repository is hosting the changes to have the Code-OSS running inside a Browser and connecting to a remote HTTP(s) server (instead of using Desktop mode).

The terminal is aware of the running Pod. Then, you can open terminals in every container of the running pod (if the containers have shell access).

Upstream Code-OSS is stored using Git subtree. It means that if you're not interested in updating/rebasing upstream code you don't need to setup anything else unlike git submodules. This repository is self-contained.

Development pre-requisites

Directories layout

  • code contains the upstream content (subtree) + changes required to have Code running in a remote server.
  • build/dockerfiles are for building a container.
  • package.json holds some top-level scripts that you can find also in the code folder.

Development mode

  1. Fetch dependencies with yarn command
  2. Compile and watch folders: yarn run watch
  3. Run the server (another terminal for example): yarn run server

Image build

  1. docker build -f build/dockerfiles/linux-musl.Dockerfile -t linux-musl-amd64 .
  2. docker build -f build/dockerfiles/linux-libc.Dockerfile -t linux-libc-amd64 .
  3. export DOCKER_BUILDKIT=1
  4. docker build -f build/dockerfiles/assembly.Dockerfile -t che-code .

Updates and branches

This repository has a main branch being rebased on the main remote branch of Code-OSS. Then, for each stable version of Code-OSSthere is a matching branch. For example remote release/1.60 is handled locally as a 1.62.x branch.

Pulling/Diff against new Code OSS version - useful commands

Add the Code-OSS remote by using for example the following command:

$ git remote add upstream-code https://github.com/microsoft/vscode

Pull changes from the remote Code

For a release branch:

$ git subtree pull --prefix code upstream-code release/1.62

For the main branch:

$ git subtree pull --prefix code upstream-code main

Check the diff between local and remote

For a release branch:

$ git diff upstream-code/release/1.62 1.62.x:code

For a main branch:

$ git diff upstream-code/main main:code

How to fix the rebase-insiders Workflow?

Upstream VS Code changes may bring a breakage to Che-Code. In this case, the rebase-insiders Workflow run is failed. To fix it, follow the steps below:

  1. Checkout to a new branch, e.g.fix-rebase.
  2. Fetch the latest changes from the upstream:
git remote add upstream-code https://github.com/microsoft/vscode
git fetch upstream-code main
  1. ./rebase.sh
  2. Fix the conflicts or other errors. Note, that./rebase.sh script also apllies the patches from the .rebase directory. Sometimes, it also requires some updates there.
  3. Open a PR with your changes.

License

che-code's People

Contributors

aeschli avatar alexdima avatar alexr00 avatar bpasero avatar chrmarti avatar connor4312 avatar dbaeumer avatar deepak1556 avatar dstorey avatar egamma avatar hediet avatar isidorn avatar joaomoreno avatar jrieken avatar kieferrm avatar lramos15 avatar lszomoru avatar meganrogge avatar michelkaporin avatar mjbvz avatar octref avatar ramya-rao-a avatar rebornix avatar roblourens avatar rzhao271 avatar sandy081 avatar sbatten avatar tylerleonhardt avatar tyriar avatar weinand avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.