Edit in JSFiddle

angular.module('myApp', [])
    .controller('ExampleController', ['$scope', function ($scope) {
    $scope.master = {};

    $scope.update = function (user) {
        $scope.master = angular.copy(user);
    };

    $scope.reset = function () {
        $scope.user = angular.copy($scope.master);
    };

    $scope.reset();
}]);
<div ng-app='myApp'>
    <div ng-controller="ExampleController">
        <form novalidate class="css-form">Name:
            <input type="text" ng-model="user.name" required />
            <br />E-mail:
            <input type="email" ng-model="user.email" required />
            <br />Gender:
            <input type="radio" ng-model="user.gender" value="male" />male
            <input type="radio" ng-model="user.gender" value="female" />female
            <br />
            <button ng-click="reset()">RESET</button>
            <button ng-click="update(user)">SAVE</button>
        </form> <pre>form = {{user | json}}</pre>
 <pre>master = {{master | json}}</pre>

    </div>
</div>
.ng-scope {
    padding: 4px;
    background-color: #ddd;
}

.css-form input.ng-invalid.ng-dirty {
    background-color: #FA787E;
  }

.css-form input.ng-valid.ng-dirty {
    background-color: #78FA89;
  }